ID: 2883631
Fecha creación: 2008-03-05 16:56:14.000
<property name="body"><ac:structured-macro ac:macro-id="ee8f5ec1-26b7-4536-8c96-8b2ae74ca296" ac:name="section" ac:schema-version="1"><ac:rich-text-body>
<ac:structured-macro ac:macro-id="4d25f1cb-65b3-4908-b435-2d6684f84e86" ac:name="column" ac:schema-version="1"><ac:parameter ac:name="width">50%</ac:parameter><ac:rich-text-body>
<ac:structured-macro ac:macro-id="cef12caa-0f75-428f-a923-69a9143decdc" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>Misc. Linux documentation. When we find something useful regarding Linux that we might use again, it should get documented here.</p></ac:rich-text-body></ac:structured-macro>
<p><ac:structured-macro ac:macro-id="ea7473a7-f7df-4503-afa8-82458a003a9d" ac:name="livesearch" ac:schema-version="1"><ac:parameter ac:name="spaceKey"><ri:space ri:space-key="linux" /></ac:parameter><ac:parameter ac:name="id">1</ac:parameter></ac:structured-macro></p>
</ac:rich-text-body></ac:structured-macro>
<ac:structured-macro ac:macro-id="52f18322-60be-4521-81e5-6f52811ba01d" ac:name="column" ac:schema-version="1"><ac:parameter ac:name="width">50%</ac:parameter><ac:rich-text-body>
<ac:structured-macro ac:macro-id="d74e1da8-bbf6-4b62-a824-a84bd5076a4b" ac:name="recently-updated" ac:schema-version="1" />
</ac:rich-text-body></ac:structured-macro>
</ac:rich-text-body></ac:structured-macro></property>
hibernateVersion: 4
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-06-25 10:34:46.000
versionComment: Migrated to Confluence 5.3
contentStatus: current
space: 3014657
Colección: historicalVersions
Colección: children
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883631</id>
<property name="hibernateVersion">4</property>
<property name="title">Home</property>
<property name="lowerTitle">home</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916391</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-05 16:56:14.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-06-25 10:34:46.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">5800004</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">5800002</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584956</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181815</id>
</element>
</collection>
<property name="contentStatus">current</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
<collection name="children" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681451</id>
</element>
</collection>
</object>
ID: 2883633
Fecha creación: 2008-03-05 16:59:25.000
<property name="body"><p>Sometimes, you have an ISO you've downloaded which you would like to access in linux, but don't want to go to the hassle of burning it. The following command will allow you to mount it and read from it just like a CD:</p>
<p>mount -o loop <em>filename</em>.iso /mnt/<em>yourdirectory</em></p>
</property>
hibernateVersion: 5
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-05 16:59:26.000
versionComment: Migrated to Confluence 4.0
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883633</id>
<property name="hibernateVersion">5</property>
<property name="title">Mount an ISO like a regular CDROM</property>
<property name="lowerTitle">mount an iso like a regular cdrom</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916393</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454088</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-05 16:59:25.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-05 16:59:26.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181816</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 2883645
Fecha creación: 2008-03-06 15:37:40.000
<property name="body"><h2>First Step</h2><h5>If IP is assigned by DHCP, make sure /etc/hosts file looks like this:</h5><ac:structured-macro ac:macro-id="0ed5ac2d-595b-46ad-85c4-bcaf839a435b" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername]] ></ac:plain-text-body></ac:structured-macro><h5>If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):</h5><ac:structured-macro ac:macro-id="8b6fdc65-ea3d-49ad-ba14-5229ca47a324" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
Ubuntu:
127.0.0.1 localhost
127.0.1.1 yourserver
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
]] ></ac:plain-text-body></ac:structured-macro><h2>UBUNTU Step - populate /etc/hostname with short hostname</h2><ac:structured-macro ac:macro-id="d0b618dc-7740-485c-bfcd-674c630897be" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[yourserver]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Second Step</h2><h5>If you need the change to happen immediately without a reboot, run the following command as root:</h5><ac:structured-macro ac:macro-id="b9b0a424-edd9-4ace-a06c-3260d5bffe5f" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#hostname yourserver.suu.edu
]] ></ac:plain-text-body></ac:structured-macro><h2>Third Step</h2><h5>This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:</h5><ac:structured-macro ac:macro-id="82e6c63c-c07b-4172-b2be-d7715b9438c7" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[yourserver.suu.edu
]] ></ac:plain-text-body></ac:structured-macro><h2>Fourth Step</h2><h5>Edit the /etc/sysconfig/network file HOSTNAME line to read:</h5><ac:structured-macro ac:macro-id="b8f89b25-1558-4906-9c4f-1b416b722c7a" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">/etc/sysconfig/network</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[HOSTNAME=yourserver.suu.edu
]] ></ac:plain-text-body></ac:structured-macro><h2>Fifth Step</h2><h5>As root, run the following command:</h5><ac:structured-macro ac:macro-id="d6b78a7c-5c76-450d-96ce-52c4ae561cf4" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
]] ></ac:plain-text-body></ac:structured-macro><h2>Sixth Step</h2><h5>Red Hat - Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file</h5><ac:structured-macro ac:macro-id="4918652a-99a5-4a04-9b59-d1ac59a8dff1" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet]] ></ac:plain-text-body></ac:structured-macro><h5>Ubuntu - Edit the /etc/network/interfaces (also /etc/network/networks with proper localnet)</h5><ac:structured-macro ac:macro-id="dccb5a2d-e822-45f3-b614-93728beebe38" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 134.250.x.x
netmask 255.255.255.0
network 134.250.x.0
broadcast 134.250.x.255
gateway 134.250.x.1
dns-nameservers 134.250.2.3 134.250.6.3
dns-search suu.edu]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Finally, reboot.</h2></property>
hibernateVersion: 12
version: 13
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-07-18 10:22:48.816
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
<property name="hibernateVersion">12</property>
<property name="title">How to properly change host name and ip address</property>
<property name="lowerTitle">how to properly change host name and ip address</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916405</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454058</id>
</element>
</collection>
<property name="version">13</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-07-18 10:22:48.816</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584972</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883647</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883649</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31850655</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068757</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">32702685</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">16252983</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">13336680</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">28213445</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">28213447</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">28213443</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181834</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 2883647
Fecha creación: 2008-03-06 15:37:40.000
<property name="body">h2. First Step
h4. If IP is assigned by DHCP:
h5. Make sure /etc/hosts file looks like this:
{code:title=/etc/hosts|borderStyle=solid}
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-06 15:37:40.000
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883647</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change hostname</property>
<property name="lowerTitle">how to properly change hostname</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916407</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-06 15:37:40.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 2883649
Fecha creación: 2008-03-06 15:37:40.000
<property name="body">h2. First Step
h5. If IP is assigned by DHCP, make sure /etc/hosts file looks like this:
{code:title=/etc/hosts|borderStyle=solid}
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername
{code}
h5. If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):
{code:title=/etc/hosts|borderStyle=solid}
127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
{code}
h2. Second Step
h5. If you need the change to happen immediately without a reboot, run the following command as root:
{code:borderStyle=solid}
#hostname yourserver.suu.edu
{code}
h2. Third Step
h5. This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:
{code:borderStyle=solid}
yourserver.suu.edu
{code}</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-06 15:47:28.000
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883649</id>
<property name="hibernateVersion">2</property>
<property name="title">How to properly change hostname</property>
<property name="lowerTitle">how to properly change hostname</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916409</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-06 15:47:28.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 2883660
Fecha creación: 2008-03-07 08:28:19.000
<property name="body"><h1>Remove unnecessary services</h1>
<ac:structured-macro ac:macro-id="0c279247-23f1-4c8c-a326-c38dd01228a7" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[
chkconfig --del anacron
chkconfig --del autofs
chkconfig --del apmd
chkconfig --del atd
chkconfig --del gpm
chkconfig --del irda
chkconfig --del isdn
chkconfig --del netfs
chkconfig --del nfs
chkconfig --del nfslock
chkconfig --del nscd
chkconfig --del ntpd
chkconfig --del portmap
chkconfig --del sendmail
chkconfig --del smartd
chkconfig --del snmpd
chkconfig --del snmptrapd
chkconfig --del winbind
chkconfig --del ypbind
chkconfig --del avahi-daemon
chkconfig --del cups
chkconfig --del exim
chkconfig --del firstboot
chkconfig --del gpm
chkconfig --del fuse
chkconfig --del mdmonitor --handles software raid
cd /etc/xinetd.d/
rm -rf /etc/xinetd.d/chargen*
rm -rf /etc/xinetd.d/daytime*
rm -rf /etc/xinetd.d/echo*
rm -rf /etc/xinetd.d/rsync*
rm -rf /etc/xinetd.d/time*
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 5
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-08-19 16:29:11.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883660</id>
<property name="hibernateVersion">5</property>
<property name="title">Securing Linux</property>
<property name="lowerTitle">securing linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916420</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 08:28:19.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-08-19 16:29:11.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584975</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181837</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">7241736</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 2883664
Fecha creación: 2008-03-07 16:22:44.000
<property name="body"><p>This document pertains to Redhat Enterprise Linux specifically, but may work for other distributions as well</p>
<h3>1- Install VNC Server</h3>
<p>#up2date vnc-server</p>
<h3>2- Set it to start at boot</h3>
<p>#chkconfig vncserver on</p>
<h3>3- Set up servers for individual users</h3>
<p>#vi /etc/sysconfig/vncservers<br />
(insert the following lines into the file)<br />
VNCSERVERS=&quot;1:usera 2:userb&quot; (add as many users as desired)<br />
VNCSERVERARGS<ac:link><ri:page ri:content-title="1" /></ac:link>=&quot;-geometry 1280x1024&quot; (set resolution you desire for user a)<br />
VNCSERVERARGS<ac:link><ri:page ri:content-title="2" /></ac:link>=&quot;-geometry 1024x768&quot; (set resolution you desire for user b)</p>
<h3>4- Initialize VNC params for each user</h3>
<p>#vncpasswd usera (enter password)<br />
#vncpasswd userb (enter password)</p>
<h3>5- Restart services</h3>
<p>#/etc/init.d/vncserver restart</p>
<h3>6- Edit each user's X startup script for VNC</h3>
<p>#vi /home/usera/.vnc/xstartup<br />
(the file should look like the following for full gui capability; for slow connections, there are much 'slimmer' options; this doc assumes local LAN connectivity)</p>
<h4># The file should look like this for a normal desktop:</h4>
<ac:structured-macro ac:macro-id="2217fd81-2e98-4e8e-8025-350322a48c39" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">/home/username/.vnc/xstartup</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
The file should look like this if you have a slow connection:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &
]] ></ac:plain-text-body></ac:structured-macro>
<h3>7- Restart services again</h3>
<p>#/etc/init.d/vncserver restart</p>
<h3>8- Connect with client from remote desktop</h3>
<p>using the free RealVNC client, simply enter the following into the hostname prompt:<br />
your.server.edu:1 (the :1 denotes user 'a' in this case; substitute other numbers accordingly)</p></property>
hibernateVersion: 6
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2d0007
lastModificationDate: 2008-03-12 09:50:46.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883664</id>
<property name="hibernateVersion">6</property>
<property name="title">Configuring VNC</property>
<property name="lowerTitle">configuring vnc</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916424</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">2982477</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">2982478</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454076</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:22:44.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2d0007</id>
</property>
<property name="lastModificationDate">2008-03-12 09:50:46.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883975</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584978</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181841</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 2883674
Fecha creación: 2008-03-07 16:31:29.000
<property name="body"><h3>Ubuntu</h3>
<p>Sometimes when modifying the xorg.conf file, you'll mess it up and not have a backup. Here's a command to restore the original as it was at install.</p>
<p>dpkg-reconfigure -phigh xserver-xorg</p></property>
hibernateVersion: 5
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-07 16:31:30.000
versionComment: Migrated to Confluence 4.0
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883674</id>
<property name="hibernateVersion">5</property>
<property name="title">Reconfigure X</property>
<property name="lowerTitle">reconfigure x</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916433</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454100</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:31:29.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-07 16:31:30.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181845</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 2883680
Fecha creación: 2008-03-07 16:37:30.000
<property name="body"><h3>Provided by Jeff Johnson:</h3>
<p>No single tool, but here's what I do:</p>
<p>0) Make a copy of everything, just in case:<br />
cd /var/lib<br />
tar czvf /tmp/rpmdb.tar.gz rpm</p>
<p>1) Check /var/lib/rpm/Packages with db_verify.<br />
The command is<br />
db_verify /var/lib/rpm/Packages<br />
If that fails, the fix is<br />
cd /var/lib/rpm<br />
mv Packages Packages-ORIG<br />
db_dump Packages-ORIG | db_load Packages<br />
At this point Packages should be OK.</p>
<p>2) Read all Package headers.<br />
The command is<br />
rpm -qa<br />
If that &quot;works&quot;, go to step 5), do &quot;rpm --rebuilddb&quot; and you're<br />
done.<br />
If that segfaults, go to 3).<br />
if that hangs, then do<br />
rm -f /var/lib/rpm/__db*<br />
and try again.</p>
<p>3) You have a segfault on a header.<br />
The first step is to get the segfaulting header instance.<br />
Append &quot;debug&quot; to the Packages configuration by<br />
echo &quot;%_dbi_config_Packages %{_dbi_htconfig} lockdbfd debug&quot; \<br />
&gt;&gt; /etc/rpm/macros</p>
<p> Try &quot;rpm -qa&quot;, lots of boring glop until segfault.</p>
<p> On the screen will be something like</p>
<p> ...<br />
Get Packages key (0x8216580,4) data (0x4014f008,155244) &quot;#612&quot; 47000000<br />
rc<br />
0kernel-enterprise-2.4.9-26beta.17<br />
Get Packages key ((nil),0) data ((nil),0) &quot;&quot; deadbeef rc -30990<br />
&lt;segfault here&gt;</p>
<p> The 2nd to last &quot;Get Packages&quot; line is what you want, the<br />
bad header instance above is &quot;612&quot; in decimal. Note the<br />
package name-version-release, you'll want to reinstall<br />
that package somewhen.</p>
<p>4) Nuke the bad header.<br />
I usually whip out my handy-dandy header instance deleter,<br />
edit the bad record into the source, compile, run, and go back<br />
to step 2).</p>
<p> The program is at<br />
<a class="external-link" href="ftp://people.redhat.com/jbj/t38454.c" rel="nofollow">ftp://people.redhat.com/jbj/t38454.c</a><br />
FWIW, the program is named after the bugzilla report that<br />
caused me to write it.</p>
<p> Retrieve, and edit the bad header instances into<br />
...</p>
<ac:structured-macro ac:macro-id="f67baad4-bff4-4158-8215-c4fbcee72f88" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ int badrecs[] = {
--> EDIT --> 562, 566, 559, 561, 563, 560, 564,
-1
};
...
Compile with
cc -o t38454 t38454.c -ldb-3.2
Run as
t38454 ]] ></ac:plain-text-body></ac:structured-macro>
<p> Go back to step 2).</p>
<p>5) Clean up.<br />
a) rpm --rebuilddb<br />
b) rm -f /etc/rpm/macros<br />
c) rm -rf /var/lib/rpmrebuild*<br />
d) Reinstall the deleted package.</p></property>
hibernateVersion: 6
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-07 16:37:32.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883680</id>
<property name="hibernateVersion">6</property>
<property name="title">Fix Corrupt RPM Database</property>
<property name="lowerTitle">fix corrupt rpm database</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916439</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">2981938</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454082</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:37:30.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-07 16:37:32.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584981</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181855</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 2883975
Fecha creación: 2008-03-07 16:22:44.000
<property name="body">### This document pertains to Redhat Enterprise Linux specifically, but may work for other distributions as well
h3. 1- Install VNC Server
#up2date vnc-server
h3. 2- Set it to start at boot
#chkconfig vncserver on
h3. 3- Set up servers for individual users
#vi /etc/sysconfig/vncservers
(insert the following lines into the file)
VNCSERVERS="1:usera 2:userb" (add as many users as desired)
VNCSERVERARGS[1]="-geometry 1280x1024" (set resolution you desire for user a)
VNCSERVERARGS[2]="-geometry 1024x768" (set resolution you desire for user b)
h3. 4- Initialize VNC params for each user
#vncpasswd usera (enter password)
#vncpasswd userb (enter password)
h3. 5- Restart services
#/etc/init.d/vncserver restart
h3. 6- Edit each user's X startup script for VNC
#vi /home/usera/.vnc/xstartup
(the file should look like the following for full gui capability; for slow connections, there are much 'slimmer' options; this doc assumes local LAN connectivity)
h4. # The file should look like this for a normal desktop:
{code:title=/home/username/.vnc/xstartup|borderStyle=solid}
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
The file should look like this if you have a slow connection:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &
{code}
h3. 7- Restart services again
#/etc/init.d/vncserver restart
h3. 8- Connect with client from remote desktop
using the free RealVNC client, simply enter the following into the hostname prompt:
your.server.edu:1 (the :1 denotes user 'a' in this case; substitute other numbers accordingly)</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-07 16:22:44.000
originalVersion: 2883664
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883975</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring VNC</property>
<property name="lowerTitle">configuring vnc</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">2916717</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:22:44.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-07 16:22:44.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883664</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 3637384
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found at ftp://archive.suu.edu/clients</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:structured-macro ac:macro-id="16b70af6-809b-4b29-a505-0a94b35d0c72" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tsm
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tsm
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tsm.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:structured-macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:structured-macro ac:macro-id="461cf114-8996-4419-86ea-c935309d59ea" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:structured-macro><h4>Next, execute the following commands:</h4><ac:structured-macro ac:macro-id="cdeb93bb-ad7d-4f79-ba37-14e8872c7e76" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:structured-macro><h4>Next, register a new node on the tsm server (only for traditional backups, NOT full VMs)</h4><ac:structured-macro ac:macro-id="4a0e1641-96ae-4ea4-a9d5-d757949301ab" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[register node <nodename> <password> passe=0 do=standard url=http://<host.suu.edu>:1581 clo={windows|linux}]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h4>Then, configure the schedule via the GUI at&nbsp;<a href="https://tsm.suu.edu:16311/ibm/console">https://tsm.suu.edu:16311/ibm/console</a></h4><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:structured-macro ac:macro-id="42d6da81-c537-4c52-be52-7ee5f993549d" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:structured-macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:structured-macro ac:macro-id="617f50f1-f035-4ff9-9af5-416e537b9985" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:structured-macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:structured-macro ac:macro-id="40d082cf-4250-4421-b6e2-c1ff9c9b473a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:structured-macro ac:macro-id="da01ebc5-b519-4327-bc08-2d961fe898c1" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:structured-macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:structured-macro ac:macro-id="2c527580-eeac-49a4-b908-233b10340bd2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:structured-macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:structured-macro ac:macro-id="d7ba152f-1cad-4f01-830a-49cc1b4d10e8" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>&nbsp;</p><h3>Resetting encryption password:</h3><ac:structured-macro ac:macro-id="a85a5909-5144-4b00-89d8-009e8321b707" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[If you ever accidentally enter the wrong encryption key on initial setup, you can have it re-prompt you by doing the following:
# service suu_tivoli stop
# rm /etc/adsm/TSM.PWD
# service suu_tivoli start
# dsmc s /etc/inittab (or any other small file)
You will be prompted for nodename, and then node password. Once you've logged in, it will prompt you about the Encryption Key, at which point you select 1, and enter the key twice. If the backup completes successfully, you can move on to creating a full backup.]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 19
version: 60
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2015-07-29 09:43:54.025
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
<property name="hibernateVersion">19</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">3670142</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">35422218</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454049</id>
</element>
</collection>
<property name="version">60</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2015-07-29 09:43:54.025</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">33718274</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063238</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31850652</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31850650</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21889126</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21889124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476588</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476590</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476592</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476594</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">13107203</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476598</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">16253113</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">16253110</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">16253111</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">35323934</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749420</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239633</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239634</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">8487058</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161775</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161774</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">10977373</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749169</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749193</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">8487052</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637386</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749191</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749190</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681535</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069918</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069916</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069915</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069913</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681533</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069925</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069924</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069923</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069922</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069921</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681529</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">27361282</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681542</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346626</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346628</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585128</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22380555</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681536</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681546</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681559</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138078</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">33456167</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17137954</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805547</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138109</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138114</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138118</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138116</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182324</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 3637386
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmcad
#dsmc
{code}
Once you run dsmc, it will prompt for a username and password. Once you have entered them, you should be at a tsm prompt. Enter the following:
{code}
backup
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-10 10:56:11.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637386</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">3670144</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-10 10:56:11.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 3637388
Fecha creación: 2008-04-10 11:13:24.000
<property name="body"><p>CUPS Doc<br />
To install cups and hplip on a new server, here is the procedure:</p>
<p>CUPS:<br />
1- ensure you have the following packages installed:<br />
gcc, libjpeg, libjpeg-devel, libpng, libpng-devel, libtiff, libtiff-devel, zlib, zlib-devel,dbus-devel,php-devel,pyqt,pyqt-devel,xsane,net-snmp-devel</p>
<p>2- Download the latest stable source from www.cups.org (1.3.6 as of this writing)</p>
<p>3- Compile the source as follows:</p>
<ac:structured-macro ac:macro-id="b06961e8-28ff-4c79-b6fb-de1ac73ee21b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
rpmbuild -ta cups-version-source.tar.gz --without dbus
]] ></ac:plain-text-body></ac:structured-macro>
<p>This will produce several compiled rpms in the /usr/src/redhat/RPMS/i386 directory.<br />
The only ones you want are cups, cups-libs, cups-debuginfo, cups-devel,cups-lpd,cups-php<br />
Do an rpm -Uvh on all these packages.</p>
<p>HPLIP:</p>
<ac:structured-macro ac:macro-id="4a2b5564-4c8d-4788-bea5-214bcc2e6eca" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#tar -zxvf hplip-****.gz
#cd hplip-****
#(as banjobs, not ROOT) ./configure --enable-network-build --disable-dbus-build --disable-pp-build --disable-fax-build --disable-gui-build --disable-scan-build --enable-doc-build --enable-foomatic-ppd-install --disable-foomatic-drv-install --with-hpppddir=/usr/share/cups/model/HP --disable-hpijs-only-build --prefix=/usr
#(as banjobs, not ROOT) make
#(as ROOT) make install
#/etc/init.d/hplip restart
]] ></ac:plain-text-body></ac:structured-macro>
<p>The following command creates a print queue called tranb on Solaris<br />
lpadmin -p tranb -v/dev/null -m netstandard -o dest=134.250.51.248:3002 -T PS -I postscript -o protocol=tcp</p>
<p>--landscape using LPR</p>
<p>lpr -o landscape -o cpi=15 -o lpi=12 -o cpi=16 -Pormond SHRTRTC_876.lis</p>
<p>Cups Options:</p>
<p>Jobs can also have options associated with them such as media size, number of copies, and priority.<br />
CUPS supports collections of printers known as classes. Jobs sent to a class are forwarded to the first available printer in the class.<br />
Filters allow a user or application to print many types of files without extra effort. Print jobs sent to a CUPS server are filtered before sending them to a printer.<br />
Some filters convert job files to different formats that the printer can understand. Others perform page selection and ordering tasks.</p>
<p>CUPS provides filters for printing many types of image files, HP-GL/2 files, PDF files, and text files.<br />
CUPS also supplies PostScript and image file Raster Image Processor (&quot;RIP&quot;) filters that convert PostScript or image files into bitmaps that can be sent to a raster printer.</p>
<p>CUPS also provides implicit classes, which are collections of printers and/or classes with the same name. This allows you to setup multiple servers pointing to the same physical network printer,<br />
for example, so that you aren't relying on a single system for printing. Because this also works with printer classes, you can setup multiple servers and printers<br />
and never worry about a single point of failure unless all of the printers and servers go down!</p>
<p>General Options</p>
<p>The following options apply when printing all types of files.<br />
Selecting the Media Size, Type, and Source</p>
<p>The -o media=xyz option sets the media size, type, and/or source:</p>
<p>lp -o media=Letter filename ENTER<br />
lp -o media=Letter,MultiPurpose filename ENTER<br />
lpr -o media=Letter,Transparency filename ENTER<br />
lpr -o media=Letter,MultiPurpose,Transparency filename ENTER</p>
<p>The available media sizes, types, and sources depend on the printer, but most support the following options (case is not significant):</p>
<ul>
<li>Letter - US Letter (8.5x11 inches, or 216x279mm)</li>
<li>Legal - US Legal (8.5x14 inches, or 216x356mm)</li>
<li>A4 - ISO A4 (8.27x11.69 inches, or 210x297mm)</li>
<li>COM10 - US #10 Envelope (9.5x4.125 inches, or 241x105mm)</li>
<li>DL - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)</li>
<li>Transparency - Transparency media type or source</li>
<li>Upper - Upper paper tray</li>
<li>Lower - Lower paper tray</li>
<li>MultiPurpose - Multi-purpose paper tray</li>
<li>LargeCapacity - Large capacity paper tray</li>
</ul>
<p>The actual options supported are defined in the printer's PPD file in the PageSize, InputSlot, and MediaType options.<br />
Setting the Orientation</p>
<p>The -o landscape option will rotate the page 90 degrees to print in landscape orientation:</p>
<p>lp -o landscape filename ENTER<br />
lpr -o landscape filename ENTER</p>
<p>Printing On Both Sides of the Paper</p>
<p>The -o sides=two-sided-short-edge and -o sides=two-sided-long-edge options will enable duplexing on the printer, if the printer supports it. The -o sides=two-sided-short-edge option is suitable for landscape pages, while the -o sides=two-sided-long-edge option is suitable for portrait pages:</p>
<p>lp -o sides=two-sided-short-edge filename ENTER<br />
lp -o sides=two-sided-long-edge filename ENTER<br />
lpr -o sides=two-sided-long-edge filename ENTER</p>
<p>The default is to print single-sided:</p>
<p>lp -o sides=one-sided filename ENTER<br />
lpr -o sides=one-sided filename ENTER</p>
<p>Banner Options</p>
<p>The following options apply when printing all types of files.<br />
Selecting the Banner Page(s)</p>
<p>The -o jobsheets=start,end option sets the banner page(s) to use for a job:</p>
<p>lp -o job-sheets=none filename ENTER<br />
lp -o job-sheets=standard filename ENTER<br />
lpr -o job-sheets=classified,classified filename ENTER</p>
<p>If only one banner file is specified, it will be printed before the files in the job. If a second banner file is specified, it is printed after the files in the job.</p>
<p>The available banner pages depend on the local system configuration; CUPS includes the following banner files:</p>
<ul>
<li>none - Do not produce a banner page.</li>
<li>classified - A banner page with a &quot;classified&quot; label at the top and bottom.</li>
<li>confidential - A banner page with a &quot;confidential&quot; label at the top and bottom.</li>
<li>secret - A banner page with a &quot;secret&quot; label at the top and bottom.</li>
<li>standard - A banner page with no label at the top and bottom.</li>
<li>topsecret - A banner page with a &quot;top secret&quot; label at the top and bottom.</li>
<li>unclassified - A banner page with an &quot;unclassified&quot; label at the top and bottom.</li>
</ul>
<p>Document Options</p>
<p>The following options apply when printing all types of files.<br />
Selecting a Range of Pages</p>
<p>The -o page-ranges=pages option selects a range of pages for printing:</p>
<p>lp -o page-ranges=1 filename ENTER<br />
lp -o page-ranges=1-4 filename ENTER<br />
lp -o page-ranges=1-4,7,9-12 filename ENTER<br />
lpr -o page-ranges=1-4,7,9-12 filename ENTER</p>
<p>As shown above, the pages value can be a single page, a range of pages, or a collection of page numbers and ranges separated by commas. The pages will always be printed in ascending order, regardless of the order of the pages in the page-ranges option.</p>
<p>The default is to print all pages.<br />
Selecting Even or Odd Pages</p>
<p>Use the -o page-set=set option to select the even or odd pages:</p>
<p>lp -o page-set=odd filename ENTER<br />
lp -o page-set=even filename ENTER<br />
lpr -o page-set=even filename ENTER</p>
<p>The default is to print all pages.<br />
Setting the Output Order</p>
<p>The the -o outputorder=order option to set the output order of all pages:</p>
<p>lp -o outputorder=normal filename ENTER<br />
lp -o outputorder=reverse filename ENTER<br />
lpr -o outputorder=reverse filename ENTER</p>
<p>N-Up Printing</p>
<p>The -o number-up=value option selects N-Up printing. N-Up printing places multiple document pages on a single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is 1-Up:</p>
<p>lp -o number-up=1 filename ENTER<br />
lp -o number-up=2 filename ENTER<br />
lp -o number-up=4 filename ENTER<br />
lpr -o number-up=16 filename ENTER</p>
<p>The -o page-border=value option chooses the border to draw around each page:</p>
<ul>
<li>-o page-border=double; draw two hairline borders around each page</li>
<li>-o page-border=double-thick; draw two 1pt borders around each page</li>
<li>-o page-border=none; do not draw a border (default)</li>
<li>-o page-border=single; draw one hairline border around each page</li>
<li>-o page-border=single-thick; draw one 1pt border around each page</li>
</ul>
<p>The -o number-up-layout=value option chooses the layout of the pages on each output page:</p>
<ul>
<li>-o number-up-layout=btlr; Bottom to top, left to right</li>
<li>-o number-up-layout=btrl; Bottom to top, right to left</li>
<li>-o number-up-layout=lrbt; Left to right, bottom to top</li>
<li>-o number-up-layout=lrtb; Left to right, top to bottom (default)</li>
<li>-o number-up-layout=rlbt; Right to left, bottom to top</li>
<li>-o number-up-layout=rltb; Right to left, top to bottom</li>
<li>-o number-up-layout=tblr; Top to bottom, left to right</li>
<li>-o number-up-layout=tbrl; Top to bottom, right to left</li>
</ul>
<p>Mirroring Prints</p>
<p>You can mirror a print using the -o mirror option:</p>
<p>lp -o mirror filename ENTER<br />
lpr -o mirror filename ENTER</p>
<p>This is useful for printing mirrored pages on transfer paper, for T shirts, mugs, etc.<br />
Setting the Brightness</p>
<p>You can control the overall brightness of the printed output using the -o brightness=percent option:</p>
<p>lp -o brightness=120 filename ENTER<br />
lpr -o brightness=120 filename ENTER</p>
<p>Values greater than 100 will lighten the print, while values less than 100 will darken it.<br />
Setting the Gamma Correction</p>
<p>You can control the overall gamma correction of the printed output using the -o gamma=value option:</p>
<p>lp -o gamma=1700 filename ENTER<br />
lpr -o gamma=1700 filename ENTER</p>
<p>Values greater than 1000 will lighten the print, while values less than 1000 will darken it. The default gamma is 1000.<br />
Text Options</p>
<p>The following options apply when printing text files.<br />
Setting the Number of Characters Per Inch</p>
<p>The -o cpi=value option sets the number of characters per inch:</p>
<p>lp -o cpi=10 filename ENTER<br />
lp -o cpi=12 filename ENTER<br />
lpr -o cpi=17 filename ENTER</p>
<p>The default characters per inch is 10.<br />
Setting the Number of Lines Per Inch</p>
<p>The -o lpi=value option sets the number of lines per inch:</p>
<p>lp -o lpi=6 filename ENTER<br />
lpr -o lpi=8 filename ENTER</p>
<p>The default lines per inch is 6.<br />
Setting the Number of Columns</p>
<p>The -o columns=value option sets the number of text columns:</p>
<p>lp -o columns=2 filename ENTER<br />
lpr -o columns=3 filename ENTER</p>
<p>The default number of columns is 1.<br />
Setting the Page Margins</p>
<p>Normally the page margins are set to the hard limits of the printer. Use the -o page-left=value, -o page-right=value , -o page-top=value, and -o page-bottom=value options to adjust the page margins:</p>
<p>lp -o page-left=value filename ENTER<br />
lp -o page-right=value filename ENTER<br />
lp -o page-top=value filename ENTER<br />
lp -o page-bottom=value filename ENTER<br />
lpr -o page-bottom=value filename ENTER</p>
<p>The value argument is the margin in points; each point is 1/72 inch or 0.35mm.<br />
Pretty Printing</p>
<p>The -o prettyprint option puts a header at the top of each page with the page number, job title (usually the filename), and the date. Also, C and C++ keywords are highlighted, and comment lines are italicized:</p>
<p>lp -o prettyprint filename ENTER<br />
lpr -o prettyprint filename ENTER</p>
<p>Image Options</p>
<p>The following options apply when printing image files.<br />
Positioning the Image</p>
<p>The -o position=name option specifies the position of the image on the page:</p>
<ul>
<li>center - Center the image on the page (default)</li>
<li>top - Print the image centered at the top of the page</li>
<li>left - Print the image centered on the left of page</li>
<li>right - Print the image centered on the right of the page</li>
<li>top-left - Print the image at the top left corner of the page</li>
<li>top-right - Print the image at the top right corner of the page</li>
<li>bottom - Print the image centered at the bottom of the page</li>
<li>bottom-left - Print the image at the bottom left corner of the page</li>
<li>bottom-right - Print the image at the bottom right corner of the page</li>
</ul>
<p>Scaling the Image</p>
<p>The -o scaling=percent, -o ppi=value, and -o natural-scaling=percent options change the size of a printed image:</p>
<p>lp -o scaling=percent filename ENTER<br />
lp -o ppi=value filename ENTER<br />
lpr -o natural-scaling=percent filename ENTER</p>
<p>The scaling=percent value is a number from 1 to 800 specifying the size in relation to the page (not the image.) A scaling of 100 percent will fill the page as completely as the image aspect ratio allows. A scaling of 200 percent will print on up to 4 pages.</p>
<p>The ppi=value value is a number from 1 to 1200 specifying the resolution of the image in pixels per inch. An image that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch, for example. If the specified resolution makes the image larger than the page, multiple pages will be printed to satisfy the request.</p>
<p>The natural-scaling=percent value is a number from 1 to 800 specifying the size in relation to the natural image size. A scaling of 100 percent will print the image at its natural size, while a scaling of 50 percent will print the image at half its natural size. If the specified scaling makes the image larger than the page, multiple pages will be printed to satisfy the request.<br />
Adjusting the Hue (Tint) of an Image</p>
<p>The -o hue=value option will adjust the hue of the printed image, much like the tint control on your television:</p>
<p>lp -o hue=value filename ENTER<br />
lpr -o hue=value filename ENTER</p>
<p>The value argument is a number from -360 to 360 and represents the color hue rotation. The following table summarizes the change you'll see with different colors:<br />
Original hue=-45 hue=45<br />
Red Purple Yellow-orange<br />
Green Yellow-green Blue-green<br />
Yellow Orange Green-yellow<br />
Blue Sky-blue Purple<br />
Magenta Indigo Crimson<br />
Cyan Blue-green Light-navy-blue</p>
<p>The default hue adjustment is 0.<br />
Adjusting the Saturation (Color) of an Image</p>
<p>The -o saturation=percent option adjusts the saturation of the colors in an image, much like the color knob on your television:</p>
<p>lp -o saturation=percent filename ENTER<br />
lpr -o saturation=percent filename ENTER</p>
<p>The percent argument specifies the color saturation from 0 to 200. A color saturation of 0 produces a black-and-white print, while a value of 200 will make the colors extremely intense.</p>
<p>The default saturation is 100.<br />
HP-GL/2 Options</p>
<p>The following options apply to HP-GL/2 files.<br />
Printing in Black</p>
<p>The -o blackplot option specifies that all pens should plot in black:</p>
<p>lp -o blackplot filename ENTER<br />
lpr -o blackplot filename ENTER</p>
<p>The default is to use the colors defined in the plot file or the standard pen colors defined in the HP-GL/2 reference manual from Hewlett Packard.<br />
Fitting the Plot on the Page</p>
<p>The -o fitplot option specifies that the plot should be scaled to fit on the page:</p>
<p>lp -o fitplot filename ENTER<br />
lpr -o fitplot filename ENTER</p>
<p>The default is to use the absolute distances specified in the plot file.<br />
NOTE:</p>
<p>This feature depends upon an accurate plot size (PS) command in the HP-GL/2 file. If no plot size is given in the file than the HP-GL/2 filter assumes the plot is ANSI E size.</p>
<p>Setting the Default Pen Width</p>
<p>The -o penwidth=value option specifies the default pen width for HP-GL/2 files:</p>
<p>lp -o penwidth=value filename ENTER<br />
lpr -o penwidth=value filename ENTER</p>
<p>The pen width value specifies the pen width in micrometers. The default value of 1000 produces lines that are 1 millimeter in width. Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.<br />
NOTE:</p>
<p>This option is ignored when the pen widths are set in the plot file.</p>
<p>Raw or Unfiltered Output</p>
<p>The -o raw option allows you to send files directly to a printer without filtering. This is sometimes required when printing from applications that provide their own &quot;printer drivers&quot; for your printer:</p>
<p>lp -o raw filename ENTER<br />
lpr -o raw filename ENTER</p>
<p>The -l option can also be used with the lpr command to send files directly to a printer:</p>
<p>lpr -l filename ENTER</p>
<p>4 - Saving Printer Options and Defaults</p>
<p>This chapter describes how to save printer options for your printer and set your own default printer.<br />
Printer Options</p>
<p>Each printer supports a large number of options, which you learned about in Chapter 3, &quot;Standard Printer Options&quot;. Rather than specifying these options each time you print a file, CUPS allows you to save them as &quot;default&quot; options for the printer.</p>
<p>The lpoptions(1) command saves the options for your printers. Like the lp and lpr commands, it accepts printer options using the -o argument:</p>
<p>lpoptions -o prettyprint ENTER<br />
lpoptions -o media=A4 -o sides=two-sided-long-edge ENTER<br />
lpoptions -o media=Legal -o scaling=100 ENTER</p>
<p>Once saved, any lp or lpr command will use them when you print.<br />
Note:</p>
<p>Running the lpoptions command as the root user (or any user with a UID of 0) will set the default options for all users. The root account does not have its own set of default options.</p>
<p>Setting Options for a Specific Printer</p>
<p>The previous example shows how to set the options for the default printer. The -p printer option specifies the options are for another printer:</p>
<p>lpoptions -p laserjet -o prettyprint ENTER<br />
lpoptions -p laserjet -o media=A4 -o sides=two-sided-long-edge ENTER<br />
lpoptions -p deskjet -o media=Legal -o scaling=100 ENTER</p>
<p>Removing Options</p>
<p>The previous two examples shows how to set options for the default and a specific printer. Below, shows you how to remove the saved option using the -r argument:</p>
<p>lpoptions -r prettyprint ENTER<br />
lpoptions -p laserjet -r prettyprint ENTER</p>
<p>Viewing the Current Defaults</p>
<p>The lpoptions command can also be used to show the current options by not specifying any new options on the command-line:</p>
<p>lpoptions ENTER<br />
media=A4 sides=two-sided-long-edge<br />
lpoptions -p deskjet ENTER<br />
media=Legal scaling=100</p>
<p>Viewing Options for a Specific Printer</p>
<p>You can display the supported options using the lpoptions command with the -l option, as follows:</p>
<p>lpoptions -p laserjet -l ENTER</p>
<p>Setting the Default Printer</p>
<p>The administrator normally will set a system-wide default printer that is normally used as the default printer by everyone. Use the -d printer option to set your own default printer:</p>
<p>lpoptions -d deskjet ENTER</p>
<p>The printer can be local (deskjet) or remote ( deskjet@server).<br />
Printer Instances</p>
<p>Besides setting options for each print queue, CUPS supports printer instances which allow you to define several different sets of options for each printer. You specify a printer instance using the slash <ac:emoticon ac:name="tick" /> character:</p>
<p>lpoptions -p laserjet/duplex -o sides=two-sided-long-edge ENTER<br />
lpoptions -p laserjet/legal -o media=Legal ENTER</p>
<p>The lp and lpr commands also understand this notation:</p>
<p>lp -d laserjet/duplex filename ENTER<br />
lpr -P laserjet/legal filename ENTER</p>
<p>Removing Instances</p>
<p>Use the -x printer/instance option to remove a printer instance that you no longer need:</p>
<p>lpoptions -x laserjet ENTER<br />
lpoptions -x laserjet/duplex ENTER<br />
lpoptions -x laserjet/legal ENTER</p>
<p>The -x option only removes the default options for that printer and instance; the original print queue will remain until deleted with the lpadmin(8) command by the administrator.</p>
<ol>
<li>Allow printing to printer MyLaserJet from</li>
<li>itself and computers 192.10.2.5 and 192.10.2.6<br />
&lt;Location /printers/MyLaserJet&gt;<br />
...<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.1<br />
Allow from 192.10.2.5<br />
Allow from 192.10.2.6<br />
&lt;/Location&gt;</li>
</ol>
<ol>
<li>Allow printing to printer MyLaserJet from</li>
<li>itself and all computers on subnet 192.10.2.x<br />
&lt;Location /printers/MyLaserJet&gt;<br />
...<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.1<br />
Allow from 192.10.2.0/255.255.255.0<br />
&lt;/Location&gt;</li>
</ol>
</property>
hibernateVersion: 4
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-07-21 16:20:14.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637388</id>
<property name="hibernateVersion">4</property>
<property name="title">CUPS Reference</property>
<property name="lowerTitle">cups reference</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">3670146</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454079</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 11:13:24.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-07-21 16:20:14.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226235</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226238</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226237</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226236</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637393</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585129</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182336</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 3637393
Fecha creación: 2008-04-10 11:13:24.000
<property name="body">CUPS Doc
To install cups and hplip on a new server, here is the procedure:
CUPS:
1- ensure you have the following packages installed:
gcc, libjpeg, libjpeg-devel, libpng, libpng-devel, libtiff, libtiff-devel, zlib, zlib-devel,dbus-devel,php-devel,pyqt,pyqt-devel,xsane
2- Download the latest stable source from www.cups.org (1.3.6 as of this writing)
3- Compile the source as follows:
{code}rpmbuild -ta cups-version-source.tar.gz{code}
This will produce several compiled rpms in the /usr/src/redhat/RPMS/i386 directory.
The only ones you want are cups, cups-libs, cups-debuginfo, cups-devel,cups-lpd,cups-php
Do an rpm -Uvh on all these packages.
HPLIP:
{code}#tar -zxvf hplip-****.gz
#cd hplip-****
#(as banjobs, not ROOT) ./configure --enable-network-build --disable-pp-build --disable-fax-build --disable-gui-build --disable-scan-build --enable-doc-build --enable-foomatic-ppd-install --disable-foomatic-drv-install --with-hpppddir=/usr/share/cups/model/HP --disable-hpijs-only-build --prefix=/usr
#(as banjobs, not ROOT) make
#(as ROOT) make install
#/etc/init.d/hplip restart
{code}
Cups Options:
Jobs can also have options associated with them such as media size, number of copies, and priority.
CUPS supports collections of printers known as classes. Jobs sent to a class are forwarded to the first available printer in the class.
Filters allow a user or application to print many types of files without extra effort. Print jobs sent to a CUPS server are filtered before sending them to a printer.
Some filters convert job files to different formats that the printer can understand. Others perform page selection and ordering tasks.
CUPS provides filters for printing many types of image files, HP-GL/2 files, PDF files, and text files.
CUPS also supplies PostScript and image file Raster Image Processor ("RIP") filters that convert PostScript or image files into bitmaps that can be sent to a raster printer.
CUPS also provides implicit classes, which are collections of printers and/or classes with the same name. This allows you to setup multiple servers pointing to the same physical network printer,
for example, so that you aren't relying on a single system for printing. Because this also works with printer classes, you can setup multiple servers and printers
and never worry about a single point of failure unless all of the printers and servers go down!
General Options
The following options apply when printing all types of files.
Selecting the Media Size, Type, and Source
The -o media=xyz option sets the media size, type, and/or source:
lp -o media=Letter filename ENTER
lp -o media=Letter,MultiPurpose filename ENTER
lpr -o media=Letter,Transparency filename ENTER
lpr -o media=Letter,MultiPurpose,Transparency filename ENTER
The available media sizes, types, and sources depend on the printer, but most support the following options (case is not significant):
* Letter - US Letter (8.5x11 inches, or 216x279mm)
* Legal - US Legal (8.5x14 inches, or 216x356mm)
* A4 - ISO A4 (8.27x11.69 inches, or 210x297mm)
* COM10 - US #10 Envelope (9.5x4.125 inches, or 241x105mm)
* DL - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)
* Transparency - Transparency media type or source
* Upper - Upper paper tray
* Lower - Lower paper tray
* MultiPurpose - Multi-purpose paper tray
* LargeCapacity - Large capacity paper tray
The actual options supported are defined in the printer's PPD file in the PageSize, InputSlot, and MediaType options.
Setting the Orientation
The -o landscape option will rotate the page 90 degrees to print in landscape orientation:
lp -o landscape filename ENTER
lpr -o landscape filename ENTER
Printing On Both Sides of the Paper
The -o sides=two-sided-short-edge and -o sides=two-sided-long-edge options will enable duplexing on the printer, if the printer supports it. The -o sides=two-sided-short-edge option is suitable for landscape pages, while the -o sides=two-sided-long-edge option is suitable for portrait pages:
lp -o sides=two-sided-short-edge filename ENTER
lp -o sides=two-sided-long-edge filename ENTER
lpr -o sides=two-sided-long-edge filename ENTER
The default is to print single-sided:
lp -o sides=one-sided filename ENTER
lpr -o sides=one-sided filename ENTER
Banner Options
The following options apply when printing all types of files.
Selecting the Banner Page(s)
The -o jobsheets=start,end option sets the banner page(s) to use for a job:
lp -o job-sheets=none filename ENTER
lp -o job-sheets=standard filename ENTER
lpr -o job-sheets=classified,classified filename ENTER
If only one banner file is specified, it will be printed before the files in the job. If a second banner file is specified, it is printed after the files in the job.
The available banner pages depend on the local system configuration; CUPS includes the following banner files:
* none - Do not produce a banner page.
* classified - A banner page with a "classified" label at the top and bottom.
* confidential - A banner page with a "confidential" label at the top and bottom.
* secret - A banner page with a "secret" label at the top and bottom.
* standard - A banner page with no label at the top and bottom.
* topsecret - A banner page with a "top secret" label at the top and bottom.
* unclassified - A banner page with an "unclassified" label at the top and bottom.
Document Options
The following options apply when printing all types of files.
Selecting a Range of Pages
The -o page-ranges=pages option selects a range of pages for printing:
lp -o page-ranges=1 filename ENTER
lp -o page-ranges=1-4 filename ENTER
lp -o page-ranges=1-4,7,9-12 filename ENTER
lpr -o page-ranges=1-4,7,9-12 filename ENTER
As shown above, the pages value can be a single page, a range of pages, or a collection of page numbers and ranges separated by commas. The pages will always be printed in ascending order, regardless of the order of the pages in the page-ranges option.
The default is to print all pages.
Selecting Even or Odd Pages
Use the -o page-set=set option to select the even or odd pages:
lp -o page-set=odd filename ENTER
lp -o page-set=even filename ENTER
lpr -o page-set=even filename ENTER
The default is to print all pages.
Setting the Output Order
The the -o outputorder=order option to set the output order of all pages:
lp -o outputorder=normal filename ENTER
lp -o outputorder=reverse filename ENTER
lpr -o outputorder=reverse filename ENTER
N-Up Printing
The -o number-up=value option selects N-Up printing. N-Up printing places multiple document pages on a single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is 1-Up:
lp -o number-up=1 filename ENTER
lp -o number-up=2 filename ENTER
lp -o number-up=4 filename ENTER
lpr -o number-up=16 filename ENTER
The -o page-border=value option chooses the border to draw around each page:
* -o page-border=double; draw two hairline borders around each page
* -o page-border=double-thick; draw two 1pt borders around each page
* -o page-border=none; do not draw a border (default)
* -o page-border=single; draw one hairline border around each page
* -o page-border=single-thick; draw one 1pt border around each page
The -o number-up-layout=value option chooses the layout of the pages on each output page:
* -o number-up-layout=btlr; Bottom to top, left to right
* -o number-up-layout=btrl; Bottom to top, right to left
* -o number-up-layout=lrbt; Left to right, bottom to top
* -o number-up-layout=lrtb; Left to right, top to bottom (default)
* -o number-up-layout=rlbt; Right to left, bottom to top
* -o number-up-layout=rltb; Right to left, top to bottom
* -o number-up-layout=tblr; Top to bottom, left to right
* -o number-up-layout=tbrl; Top to bottom, right to left
Mirroring Prints
You can mirror a print using the -o mirror option:
lp -o mirror filename ENTER
lpr -o mirror filename ENTER
This is useful for printing mirrored pages on transfer paper, for T shirts, mugs, etc.
Setting the Brightness
You can control the overall brightness of the printed output using the -o brightness=percent option:
lp -o brightness=120 filename ENTER
lpr -o brightness=120 filename ENTER
Values greater than 100 will lighten the print, while values less than 100 will darken it.
Setting the Gamma Correction
You can control the overall gamma correction of the printed output using the -o gamma=value option:
lp -o gamma=1700 filename ENTER
lpr -o gamma=1700 filename ENTER
Values greater than 1000 will lighten the print, while values less than 1000 will darken it. The default gamma is 1000.
Text Options
The following options apply when printing text files.
Setting the Number of Characters Per Inch
The -o cpi=value option sets the number of characters per inch:
lp -o cpi=10 filename ENTER
lp -o cpi=12 filename ENTER
lpr -o cpi=17 filename ENTER
The default characters per inch is 10.
Setting the Number of Lines Per Inch
The -o lpi=value option sets the number of lines per inch:
lp -o lpi=6 filename ENTER
lpr -o lpi=8 filename ENTER
The default lines per inch is 6.
Setting the Number of Columns
The -o columns=value option sets the number of text columns:
lp -o columns=2 filename ENTER
lpr -o columns=3 filename ENTER
The default number of columns is 1.
Setting the Page Margins
Normally the page margins are set to the hard limits of the printer. Use the -o page-left=value, -o page-right=value , -o page-top=value, and -o page-bottom=value options to adjust the page margins:
lp -o page-left=value filename ENTER
lp -o page-right=value filename ENTER
lp -o page-top=value filename ENTER
lp -o page-bottom=value filename ENTER
lpr -o page-bottom=value filename ENTER
The value argument is the margin in points; each point is 1/72 inch or 0.35mm.
Pretty Printing
The -o prettyprint option puts a header at the top of each page with the page number, job title (usually the filename), and the date. Also, C and C++ keywords are highlighted, and comment lines are italicized:
lp -o prettyprint filename ENTER
lpr -o prettyprint filename ENTER
Image Options
The following options apply when printing image files.
Positioning the Image
The -o position=name option specifies the position of the image on the page:
* center - Center the image on the page (default)
* top - Print the image centered at the top of the page
* left - Print the image centered on the left of page
* right - Print the image centered on the right of the page
* top-left - Print the image at the top left corner of the page
* top-right - Print the image at the top right corner of the page
* bottom - Print the image centered at the bottom of the page
* bottom-left - Print the image at the bottom left corner of the page
* bottom-right - Print the image at the bottom right corner of the page
Scaling the Image
The -o scaling=percent, -o ppi=value, and -o natural-scaling=percent options change the size of a printed image:
lp -o scaling=percent filename ENTER
lp -o ppi=value filename ENTER
lpr -o natural-scaling=percent filename ENTER
The scaling=percent value is a number from 1 to 800 specifying the size in relation to the page (not the image.) A scaling of 100 percent will fill the page as completely as the image aspect ratio allows. A scaling of 200 percent will print on up to 4 pages.
The ppi=value value is a number from 1 to 1200 specifying the resolution of the image in pixels per inch. An image that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch, for example. If the specified resolution makes the image larger than the page, multiple pages will be printed to satisfy the request.
The natural-scaling=percent value is a number from 1 to 800 specifying the size in relation to the natural image size. A scaling of 100 percent will print the image at its natural size, while a scaling of 50 percent will print the image at half its natural size. If the specified scaling makes the image larger than the page, multiple pages will be printed to satisfy the request.
Adjusting the Hue (Tint) of an Image
The -o hue=value option will adjust the hue of the printed image, much like the tint control on your television:
lp -o hue=value filename ENTER
lpr -o hue=value filename ENTER
The value argument is a number from -360 to 360 and represents the color hue rotation. The following table summarizes the change you'll see with different colors:
Original hue=-45 hue=45
Red Purple Yellow-orange
Green Yellow-green Blue-green
Yellow Orange Green-yellow
Blue Sky-blue Purple
Magenta Indigo Crimson
Cyan Blue-green Light-navy-blue
The default hue adjustment is 0.
Adjusting the Saturation (Color) of an Image
The -o saturation=percent option adjusts the saturation of the colors in an image, much like the color knob on your television:
lp -o saturation=percent filename ENTER
lpr -o saturation=percent filename ENTER
The percent argument specifies the color saturation from 0 to 200. A color saturation of 0 produces a black-and-white print, while a value of 200 will make the colors extremely intense.
The default saturation is 100.
HP-GL/2 Options
The following options apply to HP-GL/2 files.
Printing in Black
The -o blackplot option specifies that all pens should plot in black:
lp -o blackplot filename ENTER
lpr -o blackplot filename ENTER
The default is to use the colors defined in the plot file or the standard pen colors defined in the HP-GL/2 reference manual from Hewlett Packard.
Fitting the Plot on the Page
The -o fitplot option specifies that the plot should be scaled to fit on the page:
lp -o fitplot filename ENTER
lpr -o fitplot filename ENTER
The default is to use the absolute distances specified in the plot file.
NOTE:
This feature depends upon an accurate plot size (PS) command in the HP-GL/2 file. If no plot size is given in the file than the HP-GL/2 filter assumes the plot is ANSI E size.
Setting the Default Pen Width
The -o penwidth=value option specifies the default pen width for HP-GL/2 files:
lp -o penwidth=value filename ENTER
lpr -o penwidth=value filename ENTER
The pen width value specifies the pen width in micrometers. The default value of 1000 produces lines that are 1 millimeter in width. Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.
NOTE:
This option is ignored when the pen widths are set in the plot file.
Raw or Unfiltered Output
The -o raw option allows you to send files directly to a printer without filtering. This is sometimes required when printing from applications that provide their own "printer drivers" for your printer:
lp -o raw filename ENTER
lpr -o raw filename ENTER
The -l option can also be used with the lpr command to send files directly to a printer:
lpr -l filename ENTER
4 - Saving Printer Options and Defaults
This chapter describes how to save printer options for your printer and set your own default printer.
Printer Options
Each printer supports a large number of options, which you learned about in Chapter 3, "Standard Printer Options". Rather than specifying these options each time you print a file, CUPS allows you to save them as "default" options for the printer.
The lpoptions(1) command saves the options for your printers. Like the lp and lpr commands, it accepts printer options using the -o argument:
lpoptions -o prettyprint ENTER
lpoptions -o media=A4 -o sides=two-sided-long-edge ENTER
lpoptions -o media=Legal -o scaling=100 ENTER
Once saved, any lp or lpr command will use them when you print.
Note:
Running the lpoptions command as the root user (or any user with a UID of 0) will set the default options for all users. The root account does not have its own set of default options.
Setting Options for a Specific Printer
The previous example shows how to set the options for the default printer. The -p printer option specifies the options are for another printer:
lpoptions -p laserjet -o prettyprint ENTER
lpoptions -p laserjet -o media=A4 -o sides=two-sided-long-edge ENTER
lpoptions -p deskjet -o media=Legal -o scaling=100 ENTER
Removing Options
The previous two examples shows how to set options for the default and a specific printer. Below, shows you how to remove the saved option using the -r argument:
lpoptions -r prettyprint ENTER
lpoptions -p laserjet -r prettyprint ENTER
Viewing the Current Defaults
The lpoptions command can also be used to show the current options by not specifying any new options on the command-line:
lpoptions ENTER
media=A4 sides=two-sided-long-edge
lpoptions -p deskjet ENTER
media=Legal scaling=100
Viewing Options for a Specific Printer
You can display the supported options using the lpoptions command with the -l option, as follows:
lpoptions -p laserjet -l ENTER
Setting the Default Printer
The administrator normally will set a system-wide default printer that is normally used as the default printer by everyone. Use the -d printer option to set your own default printer:
lpoptions -d deskjet ENTER
The printer can be local (deskjet) or remote ( deskjet@server).
Printer Instances
Besides setting options for each print queue, CUPS supports printer instances which allow you to define several different sets of options for each printer. You specify a printer instance using the slash (/) character:
lpoptions -p laserjet/duplex -o sides=two-sided-long-edge ENTER
lpoptions -p laserjet/legal -o media=Legal ENTER
The lp and lpr commands also understand this notation:
lp -d laserjet/duplex filename ENTER
lpr -P laserjet/legal filename ENTER
Removing Instances
Use the -x printer/instance option to remove a printer instance that you no longer need:
lpoptions -x laserjet ENTER
lpoptions -x laserjet/duplex ENTER
lpoptions -x laserjet/legal ENTER
The -x option only removes the default options for that printer and instance; the original print queue will remain until deleted with the lpadmin(8) command by the administrator.
# Allow printing to printer MyLaserJet from
# itself and computers 192.10.2.5 and 192.10.2.6
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.5
Allow from 192.10.2.6
</Location>
# Allow printing to printer MyLaserJet from
# itself and all computers on subnet 192.10.2.x
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.0/255.255.255.0
</Location></property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-10 11:13:24.000
originalVersion: 3637388
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637393</id>
<property name="hibernateVersion">2</property>
<property name="title">CUPS Reference</property>
<property name="lowerTitle">cups reference</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">3670151</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 11:13:24.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-10 11:13:24.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637388</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 3637395
Fecha creación: 2008-04-10 17:02:47.000
<property name="body"><h3>Bash Template for Oracle/Crystal server on Linux:</h3>
<ac:structured-macro ac:macro-id="46fbaff9-42ea-4305-8082-0cf9808b40f5" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
CRYSTALDIR=/usr/local/CE10/crystal; export CRYSTALDIR
# User specific environment and startup programs
TOM=/usr/jakarta-tomcat-5.0.28; export TOM
JAVA_HOME=/usr/java/j2sdk1.4.2_05; export JAVA_HOME
CATALINA_HOME=/usr/jakarta-tomcat-5.0.28; export CATALINA_HOME
TWO_TASK=DEV; export TWO_TASK
LD_ASSUME_KERNEL=2.4.1; export LD_ASSUME_KERNEL
ORACLE_BASE=/opt/oracle; export ORACLE_BASE
ORACLE_HOME=/opt/oracle/product/9.2.0; export ORACLE_HOME
ORACLE_SID=DEV; export ORACLE_SID
ORACLE_OWNER=oracle; export ORACLE_OWNER
SH_LIB_PATH=$ORACLE_HOME/lib; export SH_LIB_PATH
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN
ORACLE_TERM=xterm; export ORACLE_TERM
CLASSPATH=/opt/oracle/product/9.2.0/jdbc/lib/classes111.zip:/usr/local/CE10/crystal/enterprise/java/applications/cewcanative.jar; export CLASSPATH
NLS_LANG=AMERICAN; export NLS_LANG
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib; export LD_LIBRARY_PATH
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin:/usr/java/j2sdk1.4.2_05/bin
#BASEDIR=$TOM; export BASEDIR
export PATH
unset USERNAME
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 4
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-10 17:02:49.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637395</id>
<property name="hibernateVersion">4</property>
<property name="title">Configuration Notes for Business Objects or Crystal Reports on Linux</property>
<property name="lowerTitle">configuration notes for business objects or crystal reports on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">3670153</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454061</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 17:02:47.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-10 17:02:49.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585135</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182338</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 4063234
Fecha creación: 2008-04-14 08:59:59.000
<property name="body"><h2>This document assumes you have the ncpmount, ncp, ncplogin, ncpmap, and ncpumount utilities installed on your machine</h2>
<ac:structured-macro ac:macro-id="b757535c-ac42-4b39-a20d-57db97d03e25" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
ncpmount -S cl01-adusers-server -A 134.250.12.107 -U username.it.administration.suu -V adusers/IT/Yourdir /dir/where/youwantitmountedonlocalfilesystem
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 5
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-14 09:00:01.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063234</id>
<property name="hibernateVersion">5</property>
<property name="title">Mapping Netware Drives under Linux</property>
<property name="lowerTitle">mapping netware drives under linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4096002</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454085</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 08:59:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-14 09:00:01.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585137</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182339</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 4063236
Fecha creación: 2008-04-14 09:05:54.000
<property name="body"><p>SQUID INSTALLATION:<br />
Sent subscribe request to squid-users-subscribe@squid-cache.org</p>
<p>#Fix open files limit - added the following to /etc/security/limits.conf</p>
<p>squid soft nofile 4096<br />
squid hard nofile 63536</p>
<p>#Added the following line to /usr/include/bits/types.h file:<br />
#define _ _FD_SETSIZE 8192</p>
<p>#Ran the following as root; these will need to be executed before squid start; we will<br />
stick them in the rc.d script:<br />
ulimit -Hn 8192<br />
echo &quot;1024 61000&quot; &gt; /proc/sys/net/ipv4/ip_local_port_range</p>
<p>Configure command:<br />
./configure --prefix=/usr/local/squid --localstatedir=/squidcache/var --sysconfdir=/etc --enable-useragent-log --enable-icmp --enable-delay-pools --enable-htcp<br />
--enable-referer-log --enable-snmp --enable-cachemgr-hostname=squidcache.suu.edu --enable-ssl --with-openssl=/usr/local/ssl --enable-cache-digests --disable-http-violations</p>
</property>
hibernateVersion: 4
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-14 09:05:55.000
versionComment: Migrated to Confluence 4.0
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063236</id>
<property name="hibernateVersion">4</property>
<property name="title">Configure Squid</property>
<property name="lowerTitle">configure squid</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4096004</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454073</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:05:54.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-14 09:05:55.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182342</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 4063238
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the isengard FTP server in the Tivoli\Linux or Tivoli\Windoze directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmcad
#dsmc
{code}
Once you run dsmc, it will prompt for a username and password. Once you have entered them, you should be at a tsm prompt. Enter the following:
{code}
backup
{code}</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-10 10:59:54.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063238</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4096006</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-10 10:59:54.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 4063240
Fecha creación: 2008-04-14 09:09:26.000
<property name="body"><ac:structured-macro ac:macro-id="f12160db-0d69-495f-8b05-318631853549" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[The key to creating self-signed certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
]] ></ac:plain-text-body></ac:structured-macro>
<p><span style="color: rgb(51,51,51);">Installing your Certificate with Jakarta-Tomcat.</span><br />
<span style="color: rgb(51,51,51);">(For Linux &amp; Windows)</span><span style="color: rgb(51,51,51);">&nbsp;</span></p>
<table><tbody>
<tr>
<td><p> <span style="color: rgb(51,51,51);">This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.</span> </p></td>
<th><p> <span style="color: rgb(51,51,51);"><strong>Creating a Certificate Signing Request</strong></span><br class="atl-forced-newline" /> </p></th>
</tr>
<tr>
<td><p> <span style="color: rgb(51,51,51);">1. Generate a private key with the following command:</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);"><strong>$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA -keysize 1024 -validity 730 -keystore /path/to/domainname.kdb</strong></span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">You will be prompted for a password. Tomcat uses a default password of &quot;changeit&quot; - do NOT use that. If you use a different password, you will need to specify a custom password in the server.xml configuration file.</span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">In the next field you will be asked &quot;What is your first and last name?&quot; At this prompt, you must specify the common name (FQDN) of your web site.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">You will then be prompted for your organizational unit, organization, etc.</span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">2. Generate the Certificate Signing Request (CSR)</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);"><strong>$JAVA_HOME/bin/keytool -certreq -alias tomcat -keystore /path/to/keystore.kdb -file servername.csr</strong></span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">3. Now go to</span><span style="color: rgb(51,51,51);">&nbsp;</span>ipsCA<span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include BEGIN NEW CERTIFICATE REQUEST and END NEW CERTIFICATE REQUEST in your copied text.</span><br class="atl-forced-newline" />
<br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.</span><br class="atl-forced-newline" /> </p></td>
<td><p>&nbsp;</p></td>
</tr>
<tr>
<td><p> <span style="color: rgb(51,51,51);"><strong>Installing a Server Digital Certificate</strong></span><br class="atl-forced-newline" /> </p></td>
</tr>
<tr>
<td><p> <span style="color: rgb(51,51,51);"><strong>Upload a New SSL Certificate</strong></span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">After you receive your certificate,</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1</strong></span><span style="color: rgb(51,51,51);">.</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:</span><br class="atl-forced-newline" />
IPSServidores.crt <br class="atl-forced-newline" />
IPSCACLASEA1.crt <br class="atl-forced-newline" />
IPS-IPSCABUNDLE.CRT <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">You must first export the certificates in the following format:</span></p>
<ol>
<li><span style="color: rgb(51,51,51);">Copy the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>IPSCACLASEA1 Chained CA certificate</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">into a text editor such as notepad and save as</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>chain.cer</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">on a Windows machine with IE 5+.</span></li>
<li><span style="color: rgb(51,51,51);">Copy your</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>web server certificate</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">into a text editor such as notepad and save as</span><span style="color: rgb(51,51,51);"><em>yourdomain.cer</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">on a Windows machine with IE 5+.</span></li>
<li><span style="color: rgb(51,51,51);">Copy the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>IPSServidores root CA</em></span><span style="color: rgb(51,51,51);"><em>&nbsp;</em></span><span style="color: rgb(51,51,51);"><em>certificate</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">into a text editor and save as</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>root.cer</em></span><span style="color: rgb(51,51,51);"><em>&nbsp;</em></span><span style="color: rgb(51,51,51);">on a Windows machine with IE 5+.</span></li>
<li><span style="color: rgb(51,51,51);">Double-click the root.cer and select the Details tab, then Copy to File, then select the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>Base-64</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">option, give your copied certificate a file name of</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>root_der.cer</strong></span></li>
<li><span style="color: rgb(51,51,51);">Double-click the chain.cer and select Install. Choose &quot;Place all certificates in following store&quot; and select Intermediate Certification Authorities. Complete the Wizard.</span></li>
<li><span style="color: rgb(51,51,51);">Double-click the chain.cer again and select the Details tab, then Copy to File, then select the</span><span style="color: rgb(51,51,51);"><strong>Base-64</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">option, give your copied certificate a file name of</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>chain_der.cer</strong></span></li>
<li><span style="color: rgb(51,51,51);">Double click the youdomain.cer and select the Details tab, then Copy to File, then select the</span><span style="color: rgb(51,51,51);"><strong>PKCS#7 (p7b)</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">option, also select the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>Include all certificates in the certification path</strong></span><span style="color: rgb(51,51,51);">, give your copied certificate a file name of</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>yourdomain.p7b</strong></span><span style="color: rgb(51,51,51);"><strong>The following certificate installations must be executed in the stated order.</strong></span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">1. Import the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>root_der.cer</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">and</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>chain_der.cer</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">files using:</span><span style="color: rgb(51,51,51);"><strong>$ keytool -import -trustcacerts -keystore my.kdb -alias root - file root_der.cer</strong></span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);"><strong>$ keytool -import -trustcacerts -keystore my.kdb -alias chain - file chain_der.cer</strong></span><span style="color: rgb(51,51,51);">{*}</span><span style="color: rgb(51,51,51);">With my.kdb being your keystore.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">2. Import the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>yourdomain.p7b file</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">using:</span><span style="color: rgb(51,51,51);">{*}</span><span style="color: rgb(51,51,51);"><strong>keytool -import -trustcacerts -keystore my.kdb -alias tomcat -file yourdomain.p7b</strong></span><span style="color: rgb(51,51,51);">{*}</span><span style="color: rgb(51,51,51);">With my.kdb being your keystore.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">{*}Update server.xml configuration</span> <span style="color: rgb(51,51,51);">file:\* (file:*)</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">1. Open &quot;$JAKARTA_HOME/conf/server.xml&quot; in a text editor.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">2. Find the following section:</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">&lt;Connector</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">...</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">scheme=&quot;https&quot;</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">secure=&quot;true&quot;</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">keystoreFile=&quot;/pathto/my.kdb&quot;</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">keystorePass=&quot;mypassword&quot;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows)</span></li>
</ol>
</td>
<td><p>&nbsp;</p></td>
</tr>
</tbody></table>
</property>
hibernateVersion: 9
version: 11
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-19 11:40:34.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
Colección: labellings
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
<property name="hibernateVersion">9</property>
<property name="title">Managing Certificates on Tomcat</property>
<property name="lowerTitle">managing certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4096008</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">14155779</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454070</id>
</element>
</collection>
<property name="version">11</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-19 11:40:34.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">11927677</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">11927675</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">4587614</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024736</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024735</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024732</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239462</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239452</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585139</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182356</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<collection name="labellings" class="java.util.Collection">
<element class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">12779583</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 4161629
Fecha creación: 2008-04-27 18:40:03.000
<property name="body"><ac:structured-macro ac:macro-id="2f4b7cb2-4371-4c10-b189-20a22abd65c7" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>These instructions explain how to access our VPN using Linux without the Cisco vpn client.</p></ac:rich-text-body></ac:structured-macro>
<h2>Setup</h2>
<ol>
<li>Install vpnc
<ac:structured-macro ac:macro-id="1dbc5e27-da88-46d9-b576-7bcee0049067" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">Ubuntu</ac:parameter><ac:plain-text-body><![CDATA[sudo apt-get install vpnc]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Place this file in /etc/vpnc/ <ac:link><ri:attachment ri:filename="suu.conf" /></ac:link></li>
</ol>
<h2>Running</h2>
<ol>
<li><ac:structured-macro ac:macro-id="471b1473-f3f1-4e49-b993-9731f884d76a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo vpnc suu]] ></ac:plain-text-body></ac:structured-macro>
or
<ac:structured-macro ac:macro-id="afbe8a8e-91c6-4576-9678-02361a15dadb" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo vpnc suu --no-detach]] ></ac:plain-text-body></ac:structured-macro></li>
</ol>
</property>
hibernateVersion: 4
version: 5
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-05-23 22:23:01.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
Colección: attachments
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161629</id>
<property name="hibernateVersion">4</property>
<property name="title">Setting up VPN access on Linux</property>
<property name="lowerTitle">setting up vpn access on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4194392</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">4653482</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454103</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-04-27 18:40:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-05-23 22:23:01.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">4587681</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">4587679</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585153</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182403</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<collection name="attachments" class="java.util.Collection">
<element class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">4390919</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 4161774
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the isengard FTP server in the Tivoli\Linux or Tivoli\Windoze directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmcad
#dsmc
{code}
Once you run dsmc, it will prompt for a username and password. Once you have entered them, you should be at a tsm prompt. Enter the following:
{code}
backup
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
{code}
Tivoli Upgrade Fix:
Upgrading Tivoli frequently breaks itself; this is the process to fix it after the fact.
1- Install the latest RPMS
2- Make soft links in the /usr/lib directory to all the .so files in /opt/tivoli/tsm/client/api/bin folder
cd /usr/lib
ln -s /opt/tivoli/tsm/client/api/bin/libct_cu.so libct_cu.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.4.1.0.so libxmlutil-5.4.1.0.so
3- Make a soft link in the /opt/tivoli/tsm/client/ba/bin folder to /opt/tivoli/tsm/client/lang/en_US
ln -s /opt/tivoli/tsm/client/lang/en_US/ en_US
4- Stop and Start the process.
{code}</property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-14 09:08:02.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161774</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4194516</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-14 09:08:02.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 4161775
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the isengard FTP server in the Tivoli\Linux or Tivoli\Windoze directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
Once you run dsmc, it will prompt for a username and password. Once you have entered them, you should be at a tsm prompt. Enter the following:
{code}
backup
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
{code}
Tivoli Upgrade Fix:
Upgrading Tivoli frequently breaks itself; this is the process to fix it after the fact.
1- Install the latest RPMS
2- Make soft links in the /usr/lib directory to all the .so files in /opt/tivoli/tsm/client/api/bin folder
cd /usr/lib
ln -s /opt/tivoli/tsm/client/api/bin/libct_cu.so libct_cu.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.4.1.0.so libxmlutil-5.4.1.0.so
3- Make a soft link in the /opt/tivoli/tsm/client/ba/bin folder to /opt/tivoli/tsm/client/lang/en_US
ln -s /opt/tivoli/tsm/client/lang/en_US/ en_US
4- Stop and Start the process.
{code}</property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-05-14 16:57:44.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161775</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4194517</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-05-14 16:57:44.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 4587614
Fecha creación: 2008-04-14 09:09:26.000
<property name="body">{code}
The key to creating self-signing certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
{code}</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-14 09:09:26.000
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4587614</id>
<property name="hibernateVersion">2</property>
<property name="title">Managing Self-signed Certificates on Tomcat</property>
<property name="lowerTitle">managing self-signed certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4620380</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-14 09:09:26.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 4587679
Fecha creación: 2008-04-27 18:40:03.000
<property name="body">{info:title=Description}
These instructions explain how to access our VPN using Linux without the Cisco vpn client.
{info}
h2. Setup
# Install vpnc {code:title=Ubuntu}sudo apt-get install vpnc{code}
# Place this file in /etc/vpnc/ [^suu.conf]
h2. Running
# {{sudo vpnc suu}}</property>
hibernateVersion: 3
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-04-27 18:40:03.000
originalVersion: 4161629
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4587679</id>
<property name="hibernateVersion">3</property>
<property name="title">Setting up VPN access on Linux</property>
<property name="lowerTitle">setting up vpn access on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4620437</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-04-27 18:40:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-04-27 18:40:03.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161629</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 4587681
Fecha creación: 2008-04-27 18:40:03.000
<property name="body">{info:title=Description}
These instructions explain how to access our VPN using Linux without the Cisco vpn client.
{info}
h2. Setup
# Install vpnc {code:title=Ubuntu}sudo apt-get install vpnc{code}
# Place this file in /etc/vpnc/ [^suu.conf]
h2. Running
# {{sudo vpnc suu}} or {{sudo vpnc suu --no-detach}}</property>
hibernateVersion: 3
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-05-23 22:22:13.000
originalVersion: 4161629
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">4587681</id>
<property name="hibernateVersion">3</property>
<property name="title">Setting up VPN access on Linux</property>
<property name="lowerTitle">setting up vpn access on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">4620439</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-04-27 18:40:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-05-23 22:22:13.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161629</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 5799968
Fecha creación: 2008-06-24 12:31:17.000
<property name="body"><ac:structured-macro ac:macro-id="0f555421-bf63-406c-ad16-24ae885b4d25" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>Say you have a file with email addresses in it along with other junk and you just want to pull out the email addresses into a file with one email address per line... well this is how you do it.</p></ac:rich-text-body></ac:structured-macro>
<ac:structured-macro ac:macro-id="dd1ce808-c39e-454e-b284-1fc02d30105f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
cat list.txt | grep -o "[[:alnum:][:graph:]] *@[[:alnum:][:graph:]] *" > newfile.txt
]] ></ac:plain-text-body></ac:structured-macro>
<p>Where list.txt contains the emails along with other stuff and newfile.txt is the file with one email address per line.</p></property>
hibernateVersion: 4
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-06-24 12:31:19.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">5799968</id>
<property name="hibernateVersion">4</property>
<property name="title">Pulling Email Addresses From a File</property>
<property name="lowerTitle">pulling email addresses from a file</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">5832734</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454097</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-06-24 12:31:17.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-06-24 12:31:19.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585295</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182727</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 5800002
Fecha creación: 2008-03-05 16:56:14.000
<property name="body">Linux space home page.</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-05 16:56:14.000
originalVersion: 2883631
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">5800002</id>
<property name="hibernateVersion">1</property>
<property name="title">Home</property>
<property name="lowerTitle">home</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">5832767</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-05 16:56:14.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-05 16:56:14.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883631</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 5800004
Fecha creación: 2008-03-05 16:56:14.000
<property name="body">Linux space home page.
{livesearch:id=1|spaceKey=linux}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-06-25 10:31:10.000
originalVersion: 2883631
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">5800004</id>
<property name="hibernateVersion">1</property>
<property name="title">Home</property>
<property name="lowerTitle">home</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">5832769</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-05 16:56:14.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-06-25 10:31:10.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883631</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 6226006
Fecha creación: 2008-07-03 12:45:33.000
<property name="body"><ac:structured-macro ac:macro-id="f255400c-9f2d-4828-8d0c-dbc73880aaf9" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body><p>PostgreSQL is an open source database. This document is a collection of notes for postgresql administrators.</p></ac:rich-text-body></ac:structured-macro><h3>Enabling remote connections to a postgresql database</h3><p>$POSTGRES_HOME will be something like <code>/etc/postgresql/8.3/main</code></p><ac:structured-macro ac:macro-id="5dd4de3d-e03e-4350-94c7-6ddf1351a7f8" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[cd $POSTGRES_HOME
sudo vim postgresql.conf
]] ></ac:plain-text-body></ac:structured-macro><p>Find the line</p><ac:structured-macro ac:macro-id="50b62112-30f4-4285-916f-ceab2333ddb3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#listen_address = 'localhost']] ></ac:plain-text-body></ac:structured-macro><p>and change it to</p><ac:structured-macro ac:macro-id="c8313202-df34-48ae-a34e-79955a943e9b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[listen_address = '*']] ></ac:plain-text-body></ac:structured-macro><h1>Theater Manager Database Upgrade Procedure</h1><p>On April 19, 2016, we were asked to upgrade the Theatre Manager Postgresql instance from 9.3 (the latest in the Ubuntu repos) to 9.5. &nbsp;Here are the steps we took: (from&nbsp;<a href="http://no0p.github.io/postgresql/2014/03/29/upgrading-pg-ubuntu.html">http://no0p.github.io/postgresql/2014/03/29/upgrading-pg-ubuntu.html</a>)</p><p>&nbsp;</p><p style="text-align: justify;">For more core concepts take a look at&nbsp;<a href="http://www.postgresql.org/docs/9.3/static/pgupgrade.html">the official documentation for pg_upgrade</a>&nbsp;tool.</p><h2 style="text-align: justify;">Installing 9.5 alongside 9.3</h2><p style="text-align: justify;">First we install 9.5 from the&nbsp;<a href="https://wiki.postgresql.org/wiki/Apt">postgres apt repos</a>.</p><pre><code>echo &quot;deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main&quot; &gt;
/etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc
| sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install postgresql-9.5 postgresql-contrib-9.5</code></pre><p style="text-align: justify;">We note that the debian packages will start the 9.5 server and configure it to run on a port other than the port 9.3 is running on, likely 5433.</p><p style="text-align: justify;">At this point, install any shared libraries which your 9.3 database has installed and are required for&nbsp;<code>CREATE EXTENSION</code>&nbsp;commands to complete successfully. For example, if your 9.3 system uses postGIS, install postGIS packages for the 9.5 system. Identifying all extensions can be a laborious process since the pg_extension catalog table is scoped to the current database connection. Nonetheless it is absolutely necessary since the upgrade will fail without properly installed libraries.</p><h2 style="text-align: justify;">Ensuring permissions</h2><p style="text-align: justify;">To execute pg_upgrade the&nbsp;<strong>postgres</strong>&nbsp;user will need to be able to connect to both databases. The databases will not be running on their normal ports for the upgrade, so it is somewhat safer to make less secure updates to pg_hba.conf. An entry like the following rule is pretty reasonable:</p><pre><code>local all postgres peer</code></pre><p style="text-align: justify;">Depending on your tolerance for farkling with pg_hba.conf you could also change all entries to trust.</p><h2 style="text-align: justify;">Shutdown</h2><p style="text-align: justify;">Neither database should be online during the upgrade process, as that could lead to an inconsistent copy.</p><pre><code>sudo service postgresql stop 9.5
sudo service postgresql stop 9.3</code></pre><p style="text-align: justify;">Great service is down.</p><h2 style="text-align: justify;">Executing the upgrade, quickly</h2><p style="text-align: justify;">When executed pg_upgrade starts both servers on an alternative port, runs some sanity checks, and performs the necessary conversion and copy routines. It&rsquo;s simple to run:</p><pre><code>sudo su postgres
/usr/lib/postgresql/9.5/bin/pg_upgrade -b /usr/lib/postgresql/9.3/bin/
-B /usr/lib/postgresql/9.5/bin/
-d /var/lib/postgresql/9.3/main
-D /var/lib/postgresql/9.5/main
-o ' -c config_file=/etc/postgresql/9.3/main/postgresql.conf'
-O ' -c config_file=/etc/postgresql/9.5/main/postgresql.conf'</code></pre><p style="text-align: justify;">Note that the command references the full path of the pg_upgrade binary. It&rsquo;s important to use the binary for the target version.</p><p style="text-align: justify;">If this command prints an error message see the section below titled Don&rsquo;t Panic.</p><h2 style="text-align: justify;">Starting the new server</h2><p style="text-align: justify;">Now update the configuration in&nbsp;<code>/etc/postgresql/9.5/main/postgresql.conf</code>. Don&rsquo;t copy the old file as it will contain old data and config directory directives. This is a great opportunity to review your GUCs.</p><p style="text-align: justify;">Key updates are the&nbsp;<code>listen_address</code>&nbsp;and&nbsp;<code>port</code>&nbsp;directives. Then start the server carefully remembering the version suffix.</p><pre><code> sudo service postgresql start 9.5</code></pre><p style="text-align: justify;">You should now be able to restart all services which rely on the database and verify everything is working as expected.</p><h2 style="text-align: justify;">Cleaning up</h2><p style="text-align: justify;">Once satisified simply remove the 9.3 installation.</p><pre><code> sudo apt-get remove postgresql-9.3</code></pre><p style="text-align: justify;">You may choose to purge the package as well eventually.</p><h2 style="text-align: justify;">Don&rsquo;t panic</h2><p style="text-align: justify;">Depending on your configuration, there is a chance that the pg_upgrade command will fail (safely). If this happens you have the option to just restart the old server and take a break.</p><pre><code>sudo service postgresql start 9.3</code></pre><p style="text-align: justify;">And take a moment to re-evaluate.</p><p style="text-align: justify;">If you forgot about a 1TB tablespace on a rotating drive, it is okay to send an interrupt to pg_upgrade as long as you wipe the target database to a fresh install state.</p><h2 style="text-align: justify;">Final Remarks</h2><p style="text-align: justify;">This post covers a very basic upgrade process which allows for a downtime maintenance window. Its focus is on ease of safely completing the upgrade rather than minimizing downtime. There are pg_upgrade options you should be aware of such as direct linking the data files, which can save the time required to copy a potentially large database. Of course this is slightly more dangerous as it limits opportunities for backing out.</p><p style="text-align: justify;">Good luck!</p><p>&nbsp;</p></property>
hibernateVersion: 8
version: 5
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-04-19 11:24:36.928
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226006</id>
<property name="hibernateVersion">8</property>
<property name="title">PostgreSQL</property>
<property name="lowerTitle">postgresql</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">6258771</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">41484292</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">41484293</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">41484294</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">41517065</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">41517064</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">41517063</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454055</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-07-03 12:45:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-04-19 11:24:36.928</property>
<property name="versionComment" />
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">41385991</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">41385990</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585316</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182764</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 6226235
Fecha creación: 2008-04-10 11:13:24.000
<property name="body">CUPS Doc
To install cups and hplip on a new server, here is the procedure:
CUPS:
1- ensure you have the following packages installed:
gcc, libjpeg, libjpeg-devel, libpng, libpng-devel, libtiff, libtiff-devel, zlib, zlib-devel,dbus-devel,php-devel,pyqt,pyqt-devel,xsane
2- Download the latest stable source from www.cups.org (1.3.6 as of this writing)
3- Compile the source as follows:
{code}rpmbuild -ta cups-version-source.tar.gz{code}
This will produce several compiled rpms in the /usr/src/redhat/RPMS/i386 directory.
The only ones you want are cups, cups-libs, cups-debuginfo, cups-devel,cups-lpd,cups-php
Do an rpm -Uvh on all these packages.
HPLIP:
{code}#tar -zxvf hplip-****.gz
#cd hplip-****
#(as banjobs, not ROOT) ./configure --enable-network-build --disable-pp-build --disable-fax-build --disable-gui-build --disable-scan-build --enable-doc-build --enable-foomatic-ppd-install --disable-foomatic-drv-install --with-hpppddir=/usr/share/cups/model/HP --disable-hpijs-only-build --prefix=/usr
#(as banjobs, not ROOT) make
#(as ROOT) make install
#/etc/init.d/hplip restart
{code}
The following command creates a print queue called tranb on Solaris
lpadmin -p tranb -v/dev/null -m netstandard -o dest=134.250.51.248:3002 -T PS -I postscript -o protocol=tcp
--landscape using LPR
lpr -o landscape -o cpi=15 -o lpi=12 -o cpi=16 -Pormond SHRTRTC_876.lis
Cups Options:
Jobs can also have options associated with them such as media size, number of copies, and priority.
CUPS supports collections of printers known as classes. Jobs sent to a class are forwarded to the first available printer in the class.
Filters allow a user or application to print many types of files without extra effort. Print jobs sent to a CUPS server are filtered before sending them to a printer.
Some filters convert job files to different formats that the printer can understand. Others perform page selection and ordering tasks.
CUPS provides filters for printing many types of image files, HP-GL/2 files, PDF files, and text files.
CUPS also supplies PostScript and image file Raster Image Processor ("RIP") filters that convert PostScript or image files into bitmaps that can be sent to a raster printer.
CUPS also provides implicit classes, which are collections of printers and/or classes with the same name. This allows you to setup multiple servers pointing to the same physical network printer,
for example, so that you aren't relying on a single system for printing. Because this also works with printer classes, you can setup multiple servers and printers
and never worry about a single point of failure unless all of the printers and servers go down!
General Options
The following options apply when printing all types of files.
Selecting the Media Size, Type, and Source
The -o media=xyz option sets the media size, type, and/or source:
lp -o media=Letter filename ENTER
lp -o media=Letter,MultiPurpose filename ENTER
lpr -o media=Letter,Transparency filename ENTER
lpr -o media=Letter,MultiPurpose,Transparency filename ENTER
The available media sizes, types, and sources depend on the printer, but most support the following options (case is not significant):
* Letter - US Letter (8.5x11 inches, or 216x279mm)
* Legal - US Legal (8.5x14 inches, or 216x356mm)
* A4 - ISO A4 (8.27x11.69 inches, or 210x297mm)
* COM10 - US #10 Envelope (9.5x4.125 inches, or 241x105mm)
* DL - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)
* Transparency - Transparency media type or source
* Upper - Upper paper tray
* Lower - Lower paper tray
* MultiPurpose - Multi-purpose paper tray
* LargeCapacity - Large capacity paper tray
The actual options supported are defined in the printer's PPD file in the PageSize, InputSlot, and MediaType options.
Setting the Orientation
The -o landscape option will rotate the page 90 degrees to print in landscape orientation:
lp -o landscape filename ENTER
lpr -o landscape filename ENTER
Printing On Both Sides of the Paper
The -o sides=two-sided-short-edge and -o sides=two-sided-long-edge options will enable duplexing on the printer, if the printer supports it. The -o sides=two-sided-short-edge option is suitable for landscape pages, while the -o sides=two-sided-long-edge option is suitable for portrait pages:
lp -o sides=two-sided-short-edge filename ENTER
lp -o sides=two-sided-long-edge filename ENTER
lpr -o sides=two-sided-long-edge filename ENTER
The default is to print single-sided:
lp -o sides=one-sided filename ENTER
lpr -o sides=one-sided filename ENTER
Banner Options
The following options apply when printing all types of files.
Selecting the Banner Page(s)
The -o jobsheets=start,end option sets the banner page(s) to use for a job:
lp -o job-sheets=none filename ENTER
lp -o job-sheets=standard filename ENTER
lpr -o job-sheets=classified,classified filename ENTER
If only one banner file is specified, it will be printed before the files in the job. If a second banner file is specified, it is printed after the files in the job.
The available banner pages depend on the local system configuration; CUPS includes the following banner files:
* none - Do not produce a banner page.
* classified - A banner page with a "classified" label at the top and bottom.
* confidential - A banner page with a "confidential" label at the top and bottom.
* secret - A banner page with a "secret" label at the top and bottom.
* standard - A banner page with no label at the top and bottom.
* topsecret - A banner page with a "top secret" label at the top and bottom.
* unclassified - A banner page with an "unclassified" label at the top and bottom.
Document Options
The following options apply when printing all types of files.
Selecting a Range of Pages
The -o page-ranges=pages option selects a range of pages for printing:
lp -o page-ranges=1 filename ENTER
lp -o page-ranges=1-4 filename ENTER
lp -o page-ranges=1-4,7,9-12 filename ENTER
lpr -o page-ranges=1-4,7,9-12 filename ENTER
As shown above, the pages value can be a single page, a range of pages, or a collection of page numbers and ranges separated by commas. The pages will always be printed in ascending order, regardless of the order of the pages in the page-ranges option.
The default is to print all pages.
Selecting Even or Odd Pages
Use the -o page-set=set option to select the even or odd pages:
lp -o page-set=odd filename ENTER
lp -o page-set=even filename ENTER
lpr -o page-set=even filename ENTER
The default is to print all pages.
Setting the Output Order
The the -o outputorder=order option to set the output order of all pages:
lp -o outputorder=normal filename ENTER
lp -o outputorder=reverse filename ENTER
lpr -o outputorder=reverse filename ENTER
N-Up Printing
The -o number-up=value option selects N-Up printing. N-Up printing places multiple document pages on a single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is 1-Up:
lp -o number-up=1 filename ENTER
lp -o number-up=2 filename ENTER
lp -o number-up=4 filename ENTER
lpr -o number-up=16 filename ENTER
The -o page-border=value option chooses the border to draw around each page:
* -o page-border=double; draw two hairline borders around each page
* -o page-border=double-thick; draw two 1pt borders around each page
* -o page-border=none; do not draw a border (default)
* -o page-border=single; draw one hairline border around each page
* -o page-border=single-thick; draw one 1pt border around each page
The -o number-up-layout=value option chooses the layout of the pages on each output page:
* -o number-up-layout=btlr; Bottom to top, left to right
* -o number-up-layout=btrl; Bottom to top, right to left
* -o number-up-layout=lrbt; Left to right, bottom to top
* -o number-up-layout=lrtb; Left to right, top to bottom (default)
* -o number-up-layout=rlbt; Right to left, bottom to top
* -o number-up-layout=rltb; Right to left, top to bottom
* -o number-up-layout=tblr; Top to bottom, left to right
* -o number-up-layout=tbrl; Top to bottom, right to left
Mirroring Prints
You can mirror a print using the -o mirror option:
lp -o mirror filename ENTER
lpr -o mirror filename ENTER
This is useful for printing mirrored pages on transfer paper, for T shirts, mugs, etc.
Setting the Brightness
You can control the overall brightness of the printed output using the -o brightness=percent option:
lp -o brightness=120 filename ENTER
lpr -o brightness=120 filename ENTER
Values greater than 100 will lighten the print, while values less than 100 will darken it.
Setting the Gamma Correction
You can control the overall gamma correction of the printed output using the -o gamma=value option:
lp -o gamma=1700 filename ENTER
lpr -o gamma=1700 filename ENTER
Values greater than 1000 will lighten the print, while values less than 1000 will darken it. The default gamma is 1000.
Text Options
The following options apply when printing text files.
Setting the Number of Characters Per Inch
The -o cpi=value option sets the number of characters per inch:
lp -o cpi=10 filename ENTER
lp -o cpi=12 filename ENTER
lpr -o cpi=17 filename ENTER
The default characters per inch is 10.
Setting the Number of Lines Per Inch
The -o lpi=value option sets the number of lines per inch:
lp -o lpi=6 filename ENTER
lpr -o lpi=8 filename ENTER
The default lines per inch is 6.
Setting the Number of Columns
The -o columns=value option sets the number of text columns:
lp -o columns=2 filename ENTER
lpr -o columns=3 filename ENTER
The default number of columns is 1.
Setting the Page Margins
Normally the page margins are set to the hard limits of the printer. Use the -o page-left=value, -o page-right=value , -o page-top=value, and -o page-bottom=value options to adjust the page margins:
lp -o page-left=value filename ENTER
lp -o page-right=value filename ENTER
lp -o page-top=value filename ENTER
lp -o page-bottom=value filename ENTER
lpr -o page-bottom=value filename ENTER
The value argument is the margin in points; each point is 1/72 inch or 0.35mm.
Pretty Printing
The -o prettyprint option puts a header at the top of each page with the page number, job title (usually the filename), and the date. Also, C and C++ keywords are highlighted, and comment lines are italicized:
lp -o prettyprint filename ENTER
lpr -o prettyprint filename ENTER
Image Options
The following options apply when printing image files.
Positioning the Image
The -o position=name option specifies the position of the image on the page:
* center - Center the image on the page (default)
* top - Print the image centered at the top of the page
* left - Print the image centered on the left of page
* right - Print the image centered on the right of the page
* top-left - Print the image at the top left corner of the page
* top-right - Print the image at the top right corner of the page
* bottom - Print the image centered at the bottom of the page
* bottom-left - Print the image at the bottom left corner of the page
* bottom-right - Print the image at the bottom right corner of the page
Scaling the Image
The -o scaling=percent, -o ppi=value, and -o natural-scaling=percent options change the size of a printed image:
lp -o scaling=percent filename ENTER
lp -o ppi=value filename ENTER
lpr -o natural-scaling=percent filename ENTER
The scaling=percent value is a number from 1 to 800 specifying the size in relation to the page (not the image.) A scaling of 100 percent will fill the page as completely as the image aspect ratio allows. A scaling of 200 percent will print on up to 4 pages.
The ppi=value value is a number from 1 to 1200 specifying the resolution of the image in pixels per inch. An image that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch, for example. If the specified resolution makes the image larger than the page, multiple pages will be printed to satisfy the request.
The natural-scaling=percent value is a number from 1 to 800 specifying the size in relation to the natural image size. A scaling of 100 percent will print the image at its natural size, while a scaling of 50 percent will print the image at half its natural size. If the specified scaling makes the image larger than the page, multiple pages will be printed to satisfy the request.
Adjusting the Hue (Tint) of an Image
The -o hue=value option will adjust the hue of the printed image, much like the tint control on your television:
lp -o hue=value filename ENTER
lpr -o hue=value filename ENTER
The value argument is a number from -360 to 360 and represents the color hue rotation. The following table summarizes the change you'll see with different colors:
Original hue=-45 hue=45
Red Purple Yellow-orange
Green Yellow-green Blue-green
Yellow Orange Green-yellow
Blue Sky-blue Purple
Magenta Indigo Crimson
Cyan Blue-green Light-navy-blue
The default hue adjustment is 0.
Adjusting the Saturation (Color) of an Image
The -o saturation=percent option adjusts the saturation of the colors in an image, much like the color knob on your television:
lp -o saturation=percent filename ENTER
lpr -o saturation=percent filename ENTER
The percent argument specifies the color saturation from 0 to 200. A color saturation of 0 produces a black-and-white print, while a value of 200 will make the colors extremely intense.
The default saturation is 100.
HP-GL/2 Options
The following options apply to HP-GL/2 files.
Printing in Black
The -o blackplot option specifies that all pens should plot in black:
lp -o blackplot filename ENTER
lpr -o blackplot filename ENTER
The default is to use the colors defined in the plot file or the standard pen colors defined in the HP-GL/2 reference manual from Hewlett Packard.
Fitting the Plot on the Page
The -o fitplot option specifies that the plot should be scaled to fit on the page:
lp -o fitplot filename ENTER
lpr -o fitplot filename ENTER
The default is to use the absolute distances specified in the plot file.
NOTE:
This feature depends upon an accurate plot size (PS) command in the HP-GL/2 file. If no plot size is given in the file than the HP-GL/2 filter assumes the plot is ANSI E size.
Setting the Default Pen Width
The -o penwidth=value option specifies the default pen width for HP-GL/2 files:
lp -o penwidth=value filename ENTER
lpr -o penwidth=value filename ENTER
The pen width value specifies the pen width in micrometers. The default value of 1000 produces lines that are 1 millimeter in width. Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.
NOTE:
This option is ignored when the pen widths are set in the plot file.
Raw or Unfiltered Output
The -o raw option allows you to send files directly to a printer without filtering. This is sometimes required when printing from applications that provide their own "printer drivers" for your printer:
lp -o raw filename ENTER
lpr -o raw filename ENTER
The -l option can also be used with the lpr command to send files directly to a printer:
lpr -l filename ENTER
4 - Saving Printer Options and Defaults
This chapter describes how to save printer options for your printer and set your own default printer.
Printer Options
Each printer supports a large number of options, which you learned about in Chapter 3, "Standard Printer Options". Rather than specifying these options each time you print a file, CUPS allows you to save them as "default" options for the printer.
The lpoptions(1) command saves the options for your printers. Like the lp and lpr commands, it accepts printer options using the -o argument:
lpoptions -o prettyprint ENTER
lpoptions -o media=A4 -o sides=two-sided-long-edge ENTER
lpoptions -o media=Legal -o scaling=100 ENTER
Once saved, any lp or lpr command will use them when you print.
Note:
Running the lpoptions command as the root user (or any user with a UID of 0) will set the default options for all users. The root account does not have its own set of default options.
Setting Options for a Specific Printer
The previous example shows how to set the options for the default printer. The -p printer option specifies the options are for another printer:
lpoptions -p laserjet -o prettyprint ENTER
lpoptions -p laserjet -o media=A4 -o sides=two-sided-long-edge ENTER
lpoptions -p deskjet -o media=Legal -o scaling=100 ENTER
Removing Options
The previous two examples shows how to set options for the default and a specific printer. Below, shows you how to remove the saved option using the -r argument:
lpoptions -r prettyprint ENTER
lpoptions -p laserjet -r prettyprint ENTER
Viewing the Current Defaults
The lpoptions command can also be used to show the current options by not specifying any new options on the command-line:
lpoptions ENTER
media=A4 sides=two-sided-long-edge
lpoptions -p deskjet ENTER
media=Legal scaling=100
Viewing Options for a Specific Printer
You can display the supported options using the lpoptions command with the -l option, as follows:
lpoptions -p laserjet -l ENTER
Setting the Default Printer
The administrator normally will set a system-wide default printer that is normally used as the default printer by everyone. Use the -d printer option to set your own default printer:
lpoptions -d deskjet ENTER
The printer can be local (deskjet) or remote ( deskjet@server).
Printer Instances
Besides setting options for each print queue, CUPS supports printer instances which allow you to define several different sets of options for each printer. You specify a printer instance using the slash (/) character:
lpoptions -p laserjet/duplex -o sides=two-sided-long-edge ENTER
lpoptions -p laserjet/legal -o media=Legal ENTER
The lp and lpr commands also understand this notation:
lp -d laserjet/duplex filename ENTER
lpr -P laserjet/legal filename ENTER
Removing Instances
Use the -x printer/instance option to remove a printer instance that you no longer need:
lpoptions -x laserjet ENTER
lpoptions -x laserjet/duplex ENTER
lpoptions -x laserjet/legal ENTER
The -x option only removes the default options for that printer and instance; the original print queue will remain until deleted with the lpadmin(8) command by the administrator.
# Allow printing to printer MyLaserJet from
# itself and computers 192.10.2.5 and 192.10.2.6
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.5
Allow from 192.10.2.6
</Location>
# Allow printing to printer MyLaserJet from
# itself and all computers on subnet 192.10.2.x
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.0/255.255.255.0
</Location></property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-10 16:57:32.000
originalVersion: 3637388
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226235</id>
<property name="hibernateVersion">2</property>
<property name="title">CUPS Reference</property>
<property name="lowerTitle">cups reference</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">6258986</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 11:13:24.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-10 16:57:32.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637388</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 6226236
Fecha creación: 2008-04-10 11:13:24.000
<property name="body">CUPS Doc
To install cups and hplip on a new server, here is the procedure:
CUPS:
1\- ensure you have the following packages installed:
gcc, libjpeg, libjpeg-devel, libpng, libpng-devel, libtiff, libtiff-devel, zlib, zlib-devel,dbus-devel,php-devel,pyqt,pyqt-devel,xsane,net-snmp-devel
2\- Download the latest stable source from www.cups.org (1.3.6 as of this writing)
3\- Compile the source as follows:
{code}
rpmbuild -ta cups-version-source.tar.gz
{code}
This will produce several compiled rpms in the /usr/src/redhat/RPMS/i386 directory.
The only ones you want are cups, cups-libs, cups-debuginfo, cups-devel,cups-lpd,cups-php
Do an rpm \-Uvh on all these packages.
HPLIP:
{code}
#tar -zxvf hplip-****.gz
#cd hplip-****
#(as banjobs, not ROOT) ./configure --enable-network-build --disable-pp-build --disable-fax-build --disable-gui-build --disable-scan-build --enable-doc-build --enable-foomatic-ppd-install --disable-foomatic-drv-install --with-hpppddir=/usr/share/cups/model/HP --disable-hpijs-only-build --prefix=/usr
#(as banjobs, not ROOT) make
#(as ROOT) make install
#/etc/init.d/hplip restart
{code}
The following command creates a print queue called tranb on Solaris
lpadmin \-p tranb \-v/dev/null \-m netstandard \-o dest=134.250.51.248:3002 \-T PS \-I postscript \-o protocol=tcp
\--landscape using LPR
lpr \-o landscape \-o cpi=15 \-o lpi=12 \-o cpi=16 \-Pormond SHRTRTC_876.lis
Cups Options:
Jobs can also have options associated with them such as media size, number of copies, and priority.
CUPS supports collections of printers known as classes. Jobs sent to a class are forwarded to the first available printer in the class.
Filters allow a user or application to print many types of files without extra effort. Print jobs sent to a CUPS server are filtered before sending them to a printer.
Some filters convert job files to different formats that the printer can understand. Others perform page selection and ordering tasks.
CUPS provides filters for printing many types of image files, HP-GL/2 files, PDF files, and text files.
CUPS also supplies PostScript and image file Raster Image Processor ("RIP") filters that convert PostScript or image files into bitmaps that can be sent to a raster printer.
CUPS also provides implicit classes, which are collections of printers and/or classes with the same name. This allows you to setup multiple servers pointing to the same physical network printer,
for example, so that you aren't relying on a single system for printing. Because this also works with printer classes, you can setup multiple servers and printers
and never worry about a single point of failure unless all of the printers and servers go down\!
General Options
The following options apply when printing all types of files.
Selecting the Media Size, Type, and Source
The \-o media=xyz option sets the media size, type, and/or source:
lp \-o media=Letter filename ENTER
lp \-o media=Letter,MultiPurpose filename ENTER
lpr \-o media=Letter,Transparency filename ENTER
lpr \-o media=Letter,MultiPurpose,Transparency filename ENTER
The available media sizes, types, and sources depend on the printer, but most support the following options (case is not significant):
* Letter - US Letter (8.5x11 inches, or 216x279mm)
* Legal - US Legal (8.5x14 inches, or 216x356mm)
* A4 - ISO A4 (8.27x11.69 inches, or 210x297mm)
* COM10 - US #10 Envelope (9.5x4.125 inches, or 241x105mm)
* DL - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)
* Transparency - Transparency media type or source
* Upper - Upper paper tray
* Lower - Lower paper tray
* MultiPurpose - Multi-purpose paper tray
* LargeCapacity - Large capacity paper tray
The actual options supported are defined in the printer's PPD file in the PageSize, InputSlot, and MediaType options.
Setting the Orientation
The \-o landscape option will rotate the page 90 degrees to print in landscape orientation:
lp \-o landscape filename ENTER
lpr \-o landscape filename ENTER
Printing On Both Sides of the Paper
The \-o sides=two-sided-short-edge and \-o sides=two-sided-long-edge options will enable duplexing on the printer, if the printer supports it. The \-o sides=two-sided-short-edge option is suitable for landscape pages, while the \-o sides=two-sided-long-edge option is suitable for portrait pages:
lp \-o sides=two-sided-short-edge filename ENTER
lp \-o sides=two-sided-long-edge filename ENTER
lpr \-o sides=two-sided-long-edge filename ENTER
The default is to print single-sided:
lp \-o sides=one-sided filename ENTER
lpr \-o sides=one-sided filename ENTER
Banner Options
The following options apply when printing all types of files.
Selecting the Banner Page(s)
The \-o jobsheets=start,end option sets the banner page(s) to use for a job:
lp \-o job-sheets=none filename ENTER
lp \-o job-sheets=standard filename ENTER
lpr \-o job-sheets=classified,classified filename ENTER
If only one banner file is specified, it will be printed before the files in the job. If a second banner file is specified, it is printed after the files in the job.
The available banner pages depend on the local system configuration; CUPS includes the following banner files:
* none - Do not produce a banner page.
* classified - A banner page with a "classified" label at the top and bottom.
* confidential - A banner page with a "confidential" label at the top and bottom.
* secret - A banner page with a "secret" label at the top and bottom.
* standard - A banner page with no label at the top and bottom.
* topsecret - A banner page with a "top secret" label at the top and bottom.
* unclassified - A banner page with an "unclassified" label at the top and bottom.
Document Options
The following options apply when printing all types of files.
Selecting a Range of Pages
The \-o page-ranges=pages option selects a range of pages for printing:
lp \-o page-ranges=1 filename ENTER
lp \-o page-ranges=1-4 filename ENTER
lp \-o page-ranges=1-4,7,9-12 filename ENTER
lpr \-o page-ranges=1-4,7,9-12 filename ENTER
As shown above, the pages value can be a single page, a range of pages, or a collection of page numbers and ranges separated by commas. The pages will always be printed in ascending order, regardless of the order of the pages in the page-ranges option.
The default is to print all pages.
Selecting Even or Odd Pages
Use the \-o page-set=set option to select the even or odd pages:
lp \-o page-set=odd filename ENTER
lp \-o page-set=even filename ENTER
lpr \-o page-set=even filename ENTER
The default is to print all pages.
Setting the Output Order
The the \-o outputorder=order option to set the output order of all pages:
lp \-o outputorder=normal filename ENTER
lp \-o outputorder=reverse filename ENTER
lpr \-o outputorder=reverse filename ENTER
N-Up Printing
The \-o number-up=value option selects N-Up printing. N-Up printing places multiple document pages on a single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is 1-Up:
lp \-o number-up=1 filename ENTER
lp \-o number-up=2 filename ENTER
lp \-o number-up=4 filename ENTER
lpr \-o number-up=16 filename ENTER
The \-o page-border=value option chooses the border to draw around each page:
* \-o page-border=double; draw two hairline borders around each page
* \-o page-border=double-thick; draw two 1pt borders around each page
* \-o page-border=none; do not draw a border (default)
* \-o page-border=single; draw one hairline border around each page
* \-o page-border=single-thick; draw one 1pt border around each page
The \-o number-up-layout=value option chooses the layout of the pages on each output page:
* \-o number-up-layout=btlr; Bottom to top, left to right
* \-o number-up-layout=btrl; Bottom to top, right to left
* \-o number-up-layout=lrbt; Left to right, bottom to top
* \-o number-up-layout=lrtb; Left to right, top to bottom (default)
* \-o number-up-layout=rlbt; Right to left, bottom to top
* \-o number-up-layout=rltb; Right to left, top to bottom
* \-o number-up-layout=tblr; Top to bottom, left to right
* \-o number-up-layout=tbrl; Top to bottom, right to left
Mirroring Prints
You can mirror a print using the \-o mirror option:
lp \-o mirror filename ENTER
lpr \-o mirror filename ENTER
This is useful for printing mirrored pages on transfer paper, for T shirts, mugs, etc.
Setting the Brightness
You can control the overall brightness of the printed output using the \-o brightness=percent option:
lp \-o brightness=120 filename ENTER
lpr \-o brightness=120 filename ENTER
Values greater than 100 will lighten the print, while values less than 100 will darken it.
Setting the Gamma Correction
You can control the overall gamma correction of the printed output using the \-o gamma=value option:
lp \-o gamma=1700 filename ENTER
lpr \-o gamma=1700 filename ENTER
Values greater than 1000 will lighten the print, while values less than 1000 will darken it. The default gamma is 1000.
Text Options
The following options apply when printing text files.
Setting the Number of Characters Per Inch
The \-o cpi=value option sets the number of characters per inch:
lp \-o cpi=10 filename ENTER
lp \-o cpi=12 filename ENTER
lpr \-o cpi=17 filename ENTER
The default characters per inch is 10.
Setting the Number of Lines Per Inch
The \-o lpi=value option sets the number of lines per inch:
lp \-o lpi=6 filename ENTER
lpr \-o lpi=8 filename ENTER
The default lines per inch is 6.
Setting the Number of Columns
The \-o columns=value option sets the number of text columns:
lp \-o columns=2 filename ENTER
lpr \-o columns=3 filename ENTER
The default number of columns is 1.
Setting the Page Margins
Normally the page margins are set to the hard limits of the printer. Use the \-o page-left=value, \-o page-right=value , \-o page-top=value, and \-o page-bottom=value options to adjust the page margins:
lp \-o page-left=value filename ENTER
lp \-o page-right=value filename ENTER
lp \-o page-top=value filename ENTER
lp \-o page-bottom=value filename ENTER
lpr \-o page-bottom=value filename ENTER
The value argument is the margin in points; each point is 1/72 inch or 0.35mm.
Pretty Printing
The \-o prettyprint option puts a header at the top of each page with the page number, job title (usually the filename), and the date. Also, C and C+\+ keywords are highlighted, and comment lines are italicized:
lp \-o prettyprint filename ENTER
lpr \-o prettyprint filename ENTER
Image Options
The following options apply when printing image files.
Positioning the Image
The \-o position=name option specifies the position of the image on the page:
* center - Center the image on the page (default)
* top - Print the image centered at the top of the page
* left - Print the image centered on the left of page
* right - Print the image centered on the right of the page
* top-left - Print the image at the top left corner of the page
* top-right - Print the image at the top right corner of the page
* bottom - Print the image centered at the bottom of the page
* bottom-left - Print the image at the bottom left corner of the page
* bottom-right - Print the image at the bottom right corner of the page
Scaling the Image
The \-o scaling=percent, \-o ppi=value, and \-o natural-scaling=percent options change the size of a printed image:
lp \-o scaling=percent filename ENTER
lp \-o ppi=value filename ENTER
lpr \-o natural-scaling=percent filename ENTER
The scaling=percent value is a number from 1 to 800 specifying the size in relation to the page (not the image.) A scaling of 100 percent will fill the page as completely as the image aspect ratio allows. A scaling of 200 percent will print on up to 4 pages.
The ppi=value value is a number from 1 to 1200 specifying the resolution of the image in pixels per inch. An image that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch, for example. If the specified resolution makes the image larger than the page, multiple pages will be printed to satisfy the request.
The natural-scaling=percent value is a number from 1 to 800 specifying the size in relation to the natural image size. A scaling of 100 percent will print the image at its natural size, while a scaling of 50 percent will print the image at half its natural size. If the specified scaling makes the image larger than the page, multiple pages will be printed to satisfy the request.
Adjusting the Hue (Tint) of an Image
The \-o hue=value option will adjust the hue of the printed image, much like the tint control on your television:
lp \-o hue=value filename ENTER
lpr \-o hue=value filename ENTER
The value argument is a number from \-360 to 360 and represents the color hue rotation. The following table summarizes the change you'll see with different colors:
Original hue=-45 hue=45
Red Purple Yellow-orange
Green Yellow-green Blue-green
Yellow Orange Green-yellow
Blue Sky-blue Purple
Magenta Indigo Crimson
Cyan Blue-green Light-navy-blue
The default hue adjustment is 0.
Adjusting the Saturation (Color) of an Image
The \-o saturation=percent option adjusts the saturation of the colors in an image, much like the color knob on your television:
lp \-o saturation=percent filename ENTER
lpr \-o saturation=percent filename ENTER
The percent argument specifies the color saturation from 0 to 200. A color saturation of 0 produces a black-and-white print, while a value of 200 will make the colors extremely intense.
The default saturation is 100.
HP-GL/2 Options
The following options apply to HP-GL/2 files.
Printing in Black
The \-o blackplot option specifies that all pens should plot in black:
lp \-o blackplot filename ENTER
lpr \-o blackplot filename ENTER
The default is to use the colors defined in the plot file or the standard pen colors defined in the HP-GL/2 reference manual from Hewlett Packard.
Fitting the Plot on the Page
The \-o fitplot option specifies that the plot should be scaled to fit on the page:
lp \-o fitplot filename ENTER
lpr \-o fitplot filename ENTER
The default is to use the absolute distances specified in the plot file.
NOTE:
This feature depends upon an accurate plot size (PS) command in the HP-GL/2 file. If no plot size is given in the file than the HP-GL/2 filter assumes the plot is ANSI E size.
Setting the Default Pen Width
The \-o penwidth=value option specifies the default pen width for HP-GL/2 files:
lp \-o penwidth=value filename ENTER
lpr \-o penwidth=value filename ENTER
The pen width value specifies the pen width in micrometers. The default value of 1000 produces lines that are 1 millimeter in width. Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.
NOTE:
This option is ignored when the pen widths are set in the plot file.
Raw or Unfiltered Output
The \-o raw option allows you to send files directly to a printer without filtering. This is sometimes required when printing from applications that provide their own "printer drivers" for your printer:
lp \-o raw filename ENTER
lpr \-o raw filename ENTER
The \-l option can also be used with the lpr command to send files directly to a printer:
lpr \-l filename ENTER
4 - Saving Printer Options and Defaults
This chapter describes how to save printer options for your printer and set your own default printer.
Printer Options
Each printer supports a large number of options, which you learned about in Chapter 3, "Standard Printer Options". Rather than specifying these options each time you print a file, CUPS allows you to save them as "default" options for the printer.
The lpoptions(1) command saves the options for your printers. Like the lp and lpr commands, it accepts printer options using the \-o argument:
lpoptions \-o prettyprint ENTER
lpoptions \-o media=A4 \-o sides=two-sided-long-edge ENTER
lpoptions \-o media=Legal \-o scaling=100 ENTER
Once saved, any lp or lpr command will use them when you print.
Note:
Running the lpoptions command as the root user (or any user with a UID of 0) will set the default options for all users. The root account does not have its own set of default options.
Setting Options for a Specific Printer
The previous example shows how to set the options for the default printer. The \-p printer option specifies the options are for another printer:
lpoptions \-p laserjet \-o prettyprint ENTER
lpoptions \-p laserjet \-o media=A4 \-o sides=two-sided-long-edge ENTER
lpoptions \-p deskjet \-o media=Legal \-o scaling=100 ENTER
Removing Options
The previous two examples shows how to set options for the default and a specific printer. Below, shows you how to remove the saved option using the \-r argument:
lpoptions \-r prettyprint ENTER
lpoptions \-p laserjet \-r prettyprint ENTER
Viewing the Current Defaults
The lpoptions command can also be used to show the current options by not specifying any new options on the command-line:
lpoptions ENTER
media=A4 sides=two-sided-long-edge
lpoptions \-p deskjet ENTER
media=Legal scaling=100
Viewing Options for a Specific Printer
You can display the supported options using the lpoptions command with the \-l option, as follows:
lpoptions \-p laserjet \-l ENTER
Setting the Default Printer
The administrator normally will set a system-wide default printer that is normally used as the default printer by everyone. Use the \-d printer option to set your own default printer:
lpoptions \-d deskjet ENTER
The printer can be local (deskjet) or remote ( deskjet@server).
Printer Instances
Besides setting options for each print queue, CUPS supports printer instances which allow you to define several different sets of options for each printer. You specify a printer instance using the slash (/) character:
lpoptions \-p laserjet/duplex \-o sides=two-sided-long-edge ENTER
lpoptions \-p laserjet/legal \-o media=Legal ENTER
The lp and lpr commands also understand this notation:
lp \-d laserjet/duplex filename ENTER
lpr \-P laserjet/legal filename ENTER
Removing Instances
Use the \-x printer/instance option to remove a printer instance that you no longer need:
lpoptions \-x laserjet ENTER
lpoptions \-x laserjet/duplex ENTER
lpoptions \-x laserjet/legal ENTER
The \-x option only removes the default options for that printer and instance; the original print queue will remain until deleted with the lpadmin(8) command by the administrator.
# Allow printing to printer MyLaserJet from
# itself and computers 192.10.2.5 and 192.10.2.6
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.5
Allow from 192.10.2.6
</Location>
# Allow printing to printer MyLaserJet from
# itself and all computers on subnet 192.10.2.x
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.0/255.255.255.0
</Location></property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-07-21 16:04:18.000
originalVersion: 3637388
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226236</id>
<property name="hibernateVersion">2</property>
<property name="title">CUPS Reference</property>
<property name="lowerTitle">cups reference</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">6258987</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 11:13:24.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-07-21 16:04:18.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637388</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 6226237
Fecha creación: 2008-04-10 11:13:24.000
<property name="body">CUPS Doc
To install cups and hplip on a new server, here is the procedure:
CUPS:
1\- ensure you have the following packages installed:
gcc, libjpeg, libjpeg-devel, libpng, libpng-devel, libtiff, libtiff-devel, zlib, zlib-devel,dbus-devel,php-devel,pyqt,pyqt-devel,xsane,net-snmp-devel
2\- Download the latest stable source from www.cups.org (1.3.6 as of this writing)
3\- Compile the source as follows:
{code}
rpmbuild -ta cups-version-source.tar.gz --without-dbus
{code}
This will produce several compiled rpms in the /usr/src/redhat/RPMS/i386 directory.
The only ones you want are cups, cups-libs, cups-debuginfo, cups-devel,cups-lpd,cups-php
Do an rpm \-Uvh on all these packages.
HPLIP:
{code}
#tar -zxvf hplip-****.gz
#cd hplip-****
#(as banjobs, not ROOT) ./configure --enable-network-build --disable-pp-build --disable-fax-build --disable-gui-build --disable-scan-build --enable-doc-build --enable-foomatic-ppd-install --disable-foomatic-drv-install --with-hpppddir=/usr/share/cups/model/HP --disable-hpijs-only-build --prefix=/usr
#(as banjobs, not ROOT) make
#(as ROOT) make install
#/etc/init.d/hplip restart
{code}
The following command creates a print queue called tranb on Solaris
lpadmin \-p tranb \-v/dev/null \-m netstandard \-o dest=134.250.51.248:3002 \-T PS \-I postscript \-o protocol=tcp
\--landscape using LPR
lpr \-o landscape \-o cpi=15 \-o lpi=12 \-o cpi=16 \-Pormond SHRTRTC_876.lis
Cups Options:
Jobs can also have options associated with them such as media size, number of copies, and priority.
CUPS supports collections of printers known as classes. Jobs sent to a class are forwarded to the first available printer in the class.
Filters allow a user or application to print many types of files without extra effort. Print jobs sent to a CUPS server are filtered before sending them to a printer.
Some filters convert job files to different formats that the printer can understand. Others perform page selection and ordering tasks.
CUPS provides filters for printing many types of image files, HP-GL/2 files, PDF files, and text files.
CUPS also supplies PostScript and image file Raster Image Processor ("RIP") filters that convert PostScript or image files into bitmaps that can be sent to a raster printer.
CUPS also provides implicit classes, which are collections of printers and/or classes with the same name. This allows you to setup multiple servers pointing to the same physical network printer,
for example, so that you aren't relying on a single system for printing. Because this also works with printer classes, you can setup multiple servers and printers
and never worry about a single point of failure unless all of the printers and servers go down\!
General Options
The following options apply when printing all types of files.
Selecting the Media Size, Type, and Source
The \-o media=xyz option sets the media size, type, and/or source:
lp \-o media=Letter filename ENTER
lp \-o media=Letter,MultiPurpose filename ENTER
lpr \-o media=Letter,Transparency filename ENTER
lpr \-o media=Letter,MultiPurpose,Transparency filename ENTER
The available media sizes, types, and sources depend on the printer, but most support the following options (case is not significant):
* Letter - US Letter (8.5x11 inches, or 216x279mm)
* Legal - US Legal (8.5x14 inches, or 216x356mm)
* A4 - ISO A4 (8.27x11.69 inches, or 210x297mm)
* COM10 - US #10 Envelope (9.5x4.125 inches, or 241x105mm)
* DL - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)
* Transparency - Transparency media type or source
* Upper - Upper paper tray
* Lower - Lower paper tray
* MultiPurpose - Multi-purpose paper tray
* LargeCapacity - Large capacity paper tray
The actual options supported are defined in the printer's PPD file in the PageSize, InputSlot, and MediaType options.
Setting the Orientation
The \-o landscape option will rotate the page 90 degrees to print in landscape orientation:
lp \-o landscape filename ENTER
lpr \-o landscape filename ENTER
Printing On Both Sides of the Paper
The \-o sides=two-sided-short-edge and \-o sides=two-sided-long-edge options will enable duplexing on the printer, if the printer supports it. The \-o sides=two-sided-short-edge option is suitable for landscape pages, while the \-o sides=two-sided-long-edge option is suitable for portrait pages:
lp \-o sides=two-sided-short-edge filename ENTER
lp \-o sides=two-sided-long-edge filename ENTER
lpr \-o sides=two-sided-long-edge filename ENTER
The default is to print single-sided:
lp \-o sides=one-sided filename ENTER
lpr \-o sides=one-sided filename ENTER
Banner Options
The following options apply when printing all types of files.
Selecting the Banner Page(s)
The \-o jobsheets=start,end option sets the banner page(s) to use for a job:
lp \-o job-sheets=none filename ENTER
lp \-o job-sheets=standard filename ENTER
lpr \-o job-sheets=classified,classified filename ENTER
If only one banner file is specified, it will be printed before the files in the job. If a second banner file is specified, it is printed after the files in the job.
The available banner pages depend on the local system configuration; CUPS includes the following banner files:
* none - Do not produce a banner page.
* classified - A banner page with a "classified" label at the top and bottom.
* confidential - A banner page with a "confidential" label at the top and bottom.
* secret - A banner page with a "secret" label at the top and bottom.
* standard - A banner page with no label at the top and bottom.
* topsecret - A banner page with a "top secret" label at the top and bottom.
* unclassified - A banner page with an "unclassified" label at the top and bottom.
Document Options
The following options apply when printing all types of files.
Selecting a Range of Pages
The \-o page-ranges=pages option selects a range of pages for printing:
lp \-o page-ranges=1 filename ENTER
lp \-o page-ranges=1-4 filename ENTER
lp \-o page-ranges=1-4,7,9-12 filename ENTER
lpr \-o page-ranges=1-4,7,9-12 filename ENTER
As shown above, the pages value can be a single page, a range of pages, or a collection of page numbers and ranges separated by commas. The pages will always be printed in ascending order, regardless of the order of the pages in the page-ranges option.
The default is to print all pages.
Selecting Even or Odd Pages
Use the \-o page-set=set option to select the even or odd pages:
lp \-o page-set=odd filename ENTER
lp \-o page-set=even filename ENTER
lpr \-o page-set=even filename ENTER
The default is to print all pages.
Setting the Output Order
The the \-o outputorder=order option to set the output order of all pages:
lp \-o outputorder=normal filename ENTER
lp \-o outputorder=reverse filename ENTER
lpr \-o outputorder=reverse filename ENTER
N-Up Printing
The \-o number-up=value option selects N-Up printing. N-Up printing places multiple document pages on a single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is 1-Up:
lp \-o number-up=1 filename ENTER
lp \-o number-up=2 filename ENTER
lp \-o number-up=4 filename ENTER
lpr \-o number-up=16 filename ENTER
The \-o page-border=value option chooses the border to draw around each page:
* \-o page-border=double; draw two hairline borders around each page
* \-o page-border=double-thick; draw two 1pt borders around each page
* \-o page-border=none; do not draw a border (default)
* \-o page-border=single; draw one hairline border around each page
* \-o page-border=single-thick; draw one 1pt border around each page
The \-o number-up-layout=value option chooses the layout of the pages on each output page:
* \-o number-up-layout=btlr; Bottom to top, left to right
* \-o number-up-layout=btrl; Bottom to top, right to left
* \-o number-up-layout=lrbt; Left to right, bottom to top
* \-o number-up-layout=lrtb; Left to right, top to bottom (default)
* \-o number-up-layout=rlbt; Right to left, bottom to top
* \-o number-up-layout=rltb; Right to left, top to bottom
* \-o number-up-layout=tblr; Top to bottom, left to right
* \-o number-up-layout=tbrl; Top to bottom, right to left
Mirroring Prints
You can mirror a print using the \-o mirror option:
lp \-o mirror filename ENTER
lpr \-o mirror filename ENTER
This is useful for printing mirrored pages on transfer paper, for T shirts, mugs, etc.
Setting the Brightness
You can control the overall brightness of the printed output using the \-o brightness=percent option:
lp \-o brightness=120 filename ENTER
lpr \-o brightness=120 filename ENTER
Values greater than 100 will lighten the print, while values less than 100 will darken it.
Setting the Gamma Correction
You can control the overall gamma correction of the printed output using the \-o gamma=value option:
lp \-o gamma=1700 filename ENTER
lpr \-o gamma=1700 filename ENTER
Values greater than 1000 will lighten the print, while values less than 1000 will darken it. The default gamma is 1000.
Text Options
The following options apply when printing text files.
Setting the Number of Characters Per Inch
The \-o cpi=value option sets the number of characters per inch:
lp \-o cpi=10 filename ENTER
lp \-o cpi=12 filename ENTER
lpr \-o cpi=17 filename ENTER
The default characters per inch is 10.
Setting the Number of Lines Per Inch
The \-o lpi=value option sets the number of lines per inch:
lp \-o lpi=6 filename ENTER
lpr \-o lpi=8 filename ENTER
The default lines per inch is 6.
Setting the Number of Columns
The \-o columns=value option sets the number of text columns:
lp \-o columns=2 filename ENTER
lpr \-o columns=3 filename ENTER
The default number of columns is 1.
Setting the Page Margins
Normally the page margins are set to the hard limits of the printer. Use the \-o page-left=value, \-o page-right=value , \-o page-top=value, and \-o page-bottom=value options to adjust the page margins:
lp \-o page-left=value filename ENTER
lp \-o page-right=value filename ENTER
lp \-o page-top=value filename ENTER
lp \-o page-bottom=value filename ENTER
lpr \-o page-bottom=value filename ENTER
The value argument is the margin in points; each point is 1/72 inch or 0.35mm.
Pretty Printing
The \-o prettyprint option puts a header at the top of each page with the page number, job title (usually the filename), and the date. Also, C and C+\+ keywords are highlighted, and comment lines are italicized:
lp \-o prettyprint filename ENTER
lpr \-o prettyprint filename ENTER
Image Options
The following options apply when printing image files.
Positioning the Image
The \-o position=name option specifies the position of the image on the page:
* center - Center the image on the page (default)
* top - Print the image centered at the top of the page
* left - Print the image centered on the left of page
* right - Print the image centered on the right of the page
* top-left - Print the image at the top left corner of the page
* top-right - Print the image at the top right corner of the page
* bottom - Print the image centered at the bottom of the page
* bottom-left - Print the image at the bottom left corner of the page
* bottom-right - Print the image at the bottom right corner of the page
Scaling the Image
The \-o scaling=percent, \-o ppi=value, and \-o natural-scaling=percent options change the size of a printed image:
lp \-o scaling=percent filename ENTER
lp \-o ppi=value filename ENTER
lpr \-o natural-scaling=percent filename ENTER
The scaling=percent value is a number from 1 to 800 specifying the size in relation to the page (not the image.) A scaling of 100 percent will fill the page as completely as the image aspect ratio allows. A scaling of 200 percent will print on up to 4 pages.
The ppi=value value is a number from 1 to 1200 specifying the resolution of the image in pixels per inch. An image that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch, for example. If the specified resolution makes the image larger than the page, multiple pages will be printed to satisfy the request.
The natural-scaling=percent value is a number from 1 to 800 specifying the size in relation to the natural image size. A scaling of 100 percent will print the image at its natural size, while a scaling of 50 percent will print the image at half its natural size. If the specified scaling makes the image larger than the page, multiple pages will be printed to satisfy the request.
Adjusting the Hue (Tint) of an Image
The \-o hue=value option will adjust the hue of the printed image, much like the tint control on your television:
lp \-o hue=value filename ENTER
lpr \-o hue=value filename ENTER
The value argument is a number from \-360 to 360 and represents the color hue rotation. The following table summarizes the change you'll see with different colors:
Original hue=-45 hue=45
Red Purple Yellow-orange
Green Yellow-green Blue-green
Yellow Orange Green-yellow
Blue Sky-blue Purple
Magenta Indigo Crimson
Cyan Blue-green Light-navy-blue
The default hue adjustment is 0.
Adjusting the Saturation (Color) of an Image
The \-o saturation=percent option adjusts the saturation of the colors in an image, much like the color knob on your television:
lp \-o saturation=percent filename ENTER
lpr \-o saturation=percent filename ENTER
The percent argument specifies the color saturation from 0 to 200. A color saturation of 0 produces a black-and-white print, while a value of 200 will make the colors extremely intense.
The default saturation is 100.
HP-GL/2 Options
The following options apply to HP-GL/2 files.
Printing in Black
The \-o blackplot option specifies that all pens should plot in black:
lp \-o blackplot filename ENTER
lpr \-o blackplot filename ENTER
The default is to use the colors defined in the plot file or the standard pen colors defined in the HP-GL/2 reference manual from Hewlett Packard.
Fitting the Plot on the Page
The \-o fitplot option specifies that the plot should be scaled to fit on the page:
lp \-o fitplot filename ENTER
lpr \-o fitplot filename ENTER
The default is to use the absolute distances specified in the plot file.
NOTE:
This feature depends upon an accurate plot size (PS) command in the HP-GL/2 file. If no plot size is given in the file than the HP-GL/2 filter assumes the plot is ANSI E size.
Setting the Default Pen Width
The \-o penwidth=value option specifies the default pen width for HP-GL/2 files:
lp \-o penwidth=value filename ENTER
lpr \-o penwidth=value filename ENTER
The pen width value specifies the pen width in micrometers. The default value of 1000 produces lines that are 1 millimeter in width. Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.
NOTE:
This option is ignored when the pen widths are set in the plot file.
Raw or Unfiltered Output
The \-o raw option allows you to send files directly to a printer without filtering. This is sometimes required when printing from applications that provide their own "printer drivers" for your printer:
lp \-o raw filename ENTER
lpr \-o raw filename ENTER
The \-l option can also be used with the lpr command to send files directly to a printer:
lpr \-l filename ENTER
4 - Saving Printer Options and Defaults
This chapter describes how to save printer options for your printer and set your own default printer.
Printer Options
Each printer supports a large number of options, which you learned about in Chapter 3, "Standard Printer Options". Rather than specifying these options each time you print a file, CUPS allows you to save them as "default" options for the printer.
The lpoptions(1) command saves the options for your printers. Like the lp and lpr commands, it accepts printer options using the \-o argument:
lpoptions \-o prettyprint ENTER
lpoptions \-o media=A4 \-o sides=two-sided-long-edge ENTER
lpoptions \-o media=Legal \-o scaling=100 ENTER
Once saved, any lp or lpr command will use them when you print.
Note:
Running the lpoptions command as the root user (or any user with a UID of 0) will set the default options for all users. The root account does not have its own set of default options.
Setting Options for a Specific Printer
The previous example shows how to set the options for the default printer. The \-p printer option specifies the options are for another printer:
lpoptions \-p laserjet \-o prettyprint ENTER
lpoptions \-p laserjet \-o media=A4 \-o sides=two-sided-long-edge ENTER
lpoptions \-p deskjet \-o media=Legal \-o scaling=100 ENTER
Removing Options
The previous two examples shows how to set options for the default and a specific printer. Below, shows you how to remove the saved option using the \-r argument:
lpoptions \-r prettyprint ENTER
lpoptions \-p laserjet \-r prettyprint ENTER
Viewing the Current Defaults
The lpoptions command can also be used to show the current options by not specifying any new options on the command-line:
lpoptions ENTER
media=A4 sides=two-sided-long-edge
lpoptions \-p deskjet ENTER
media=Legal scaling=100
Viewing Options for a Specific Printer
You can display the supported options using the lpoptions command with the \-l option, as follows:
lpoptions \-p laserjet \-l ENTER
Setting the Default Printer
The administrator normally will set a system-wide default printer that is normally used as the default printer by everyone. Use the \-d printer option to set your own default printer:
lpoptions \-d deskjet ENTER
The printer can be local (deskjet) or remote ( deskjet@server).
Printer Instances
Besides setting options for each print queue, CUPS supports printer instances which allow you to define several different sets of options for each printer. You specify a printer instance using the slash (/) character:
lpoptions \-p laserjet/duplex \-o sides=two-sided-long-edge ENTER
lpoptions \-p laserjet/legal \-o media=Legal ENTER
The lp and lpr commands also understand this notation:
lp \-d laserjet/duplex filename ENTER
lpr \-P laserjet/legal filename ENTER
Removing Instances
Use the \-x printer/instance option to remove a printer instance that you no longer need:
lpoptions \-x laserjet ENTER
lpoptions \-x laserjet/duplex ENTER
lpoptions \-x laserjet/legal ENTER
The \-x option only removes the default options for that printer and instance; the original print queue will remain until deleted with the lpadmin(8) command by the administrator.
# Allow printing to printer MyLaserJet from
# itself and computers 192.10.2.5 and 192.10.2.6
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.5
Allow from 192.10.2.6
</Location>
# Allow printing to printer MyLaserJet from
# itself and all computers on subnet 192.10.2.x
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.0/255.255.255.0
</Location></property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-07-21 16:07:43.000
originalVersion: 3637388
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226237</id>
<property name="hibernateVersion">2</property>
<property name="title">CUPS Reference</property>
<property name="lowerTitle">cups reference</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">6258988</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 11:13:24.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-07-21 16:07:43.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637388</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 6226238
Fecha creación: 2008-04-10 11:13:24.000
<property name="body">CUPS Doc
To install cups and hplip on a new server, here is the procedure:
CUPS:
1\- ensure you have the following packages installed:
gcc, libjpeg, libjpeg-devel, libpng, libpng-devel, libtiff, libtiff-devel, zlib, zlib-devel,dbus-devel,php-devel,pyqt,pyqt-devel,xsane,net-snmp-devel
2\- Download the latest stable source from www.cups.org (1.3.6 as of this writing)
3\- Compile the source as follows:
{code}
rpmbuild -ta cups-version-source.tar.gz --without dbus
{code}
This will produce several compiled rpms in the /usr/src/redhat/RPMS/i386 directory.
The only ones you want are cups, cups-libs, cups-debuginfo, cups-devel,cups-lpd,cups-php
Do an rpm \-Uvh on all these packages.
HPLIP:
{code}
#tar -zxvf hplip-****.gz
#cd hplip-****
#(as banjobs, not ROOT) ./configure --enable-network-build --disable-pp-build --disable-fax-build --disable-gui-build --disable-scan-build --enable-doc-build --enable-foomatic-ppd-install --disable-foomatic-drv-install --with-hpppddir=/usr/share/cups/model/HP --disable-hpijs-only-build --prefix=/usr
#(as banjobs, not ROOT) make
#(as ROOT) make install
#/etc/init.d/hplip restart
{code}
The following command creates a print queue called tranb on Solaris
lpadmin \-p tranb \-v/dev/null \-m netstandard \-o dest=134.250.51.248:3002 \-T PS \-I postscript \-o protocol=tcp
\--landscape using LPR
lpr \-o landscape \-o cpi=15 \-o lpi=12 \-o cpi=16 \-Pormond SHRTRTC_876.lis
Cups Options:
Jobs can also have options associated with them such as media size, number of copies, and priority.
CUPS supports collections of printers known as classes. Jobs sent to a class are forwarded to the first available printer in the class.
Filters allow a user or application to print many types of files without extra effort. Print jobs sent to a CUPS server are filtered before sending them to a printer.
Some filters convert job files to different formats that the printer can understand. Others perform page selection and ordering tasks.
CUPS provides filters for printing many types of image files, HP-GL/2 files, PDF files, and text files.
CUPS also supplies PostScript and image file Raster Image Processor ("RIP") filters that convert PostScript or image files into bitmaps that can be sent to a raster printer.
CUPS also provides implicit classes, which are collections of printers and/or classes with the same name. This allows you to setup multiple servers pointing to the same physical network printer,
for example, so that you aren't relying on a single system for printing. Because this also works with printer classes, you can setup multiple servers and printers
and never worry about a single point of failure unless all of the printers and servers go down\!
General Options
The following options apply when printing all types of files.
Selecting the Media Size, Type, and Source
The \-o media=xyz option sets the media size, type, and/or source:
lp \-o media=Letter filename ENTER
lp \-o media=Letter,MultiPurpose filename ENTER
lpr \-o media=Letter,Transparency filename ENTER
lpr \-o media=Letter,MultiPurpose,Transparency filename ENTER
The available media sizes, types, and sources depend on the printer, but most support the following options (case is not significant):
* Letter - US Letter (8.5x11 inches, or 216x279mm)
* Legal - US Legal (8.5x14 inches, or 216x356mm)
* A4 - ISO A4 (8.27x11.69 inches, or 210x297mm)
* COM10 - US #10 Envelope (9.5x4.125 inches, or 241x105mm)
* DL - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)
* Transparency - Transparency media type or source
* Upper - Upper paper tray
* Lower - Lower paper tray
* MultiPurpose - Multi-purpose paper tray
* LargeCapacity - Large capacity paper tray
The actual options supported are defined in the printer's PPD file in the PageSize, InputSlot, and MediaType options.
Setting the Orientation
The \-o landscape option will rotate the page 90 degrees to print in landscape orientation:
lp \-o landscape filename ENTER
lpr \-o landscape filename ENTER
Printing On Both Sides of the Paper
The \-o sides=two-sided-short-edge and \-o sides=two-sided-long-edge options will enable duplexing on the printer, if the printer supports it. The \-o sides=two-sided-short-edge option is suitable for landscape pages, while the \-o sides=two-sided-long-edge option is suitable for portrait pages:
lp \-o sides=two-sided-short-edge filename ENTER
lp \-o sides=two-sided-long-edge filename ENTER
lpr \-o sides=two-sided-long-edge filename ENTER
The default is to print single-sided:
lp \-o sides=one-sided filename ENTER
lpr \-o sides=one-sided filename ENTER
Banner Options
The following options apply when printing all types of files.
Selecting the Banner Page(s)
The \-o jobsheets=start,end option sets the banner page(s) to use for a job:
lp \-o job-sheets=none filename ENTER
lp \-o job-sheets=standard filename ENTER
lpr \-o job-sheets=classified,classified filename ENTER
If only one banner file is specified, it will be printed before the files in the job. If a second banner file is specified, it is printed after the files in the job.
The available banner pages depend on the local system configuration; CUPS includes the following banner files:
* none - Do not produce a banner page.
* classified - A banner page with a "classified" label at the top and bottom.
* confidential - A banner page with a "confidential" label at the top and bottom.
* secret - A banner page with a "secret" label at the top and bottom.
* standard - A banner page with no label at the top and bottom.
* topsecret - A banner page with a "top secret" label at the top and bottom.
* unclassified - A banner page with an "unclassified" label at the top and bottom.
Document Options
The following options apply when printing all types of files.
Selecting a Range of Pages
The \-o page-ranges=pages option selects a range of pages for printing:
lp \-o page-ranges=1 filename ENTER
lp \-o page-ranges=1-4 filename ENTER
lp \-o page-ranges=1-4,7,9-12 filename ENTER
lpr \-o page-ranges=1-4,7,9-12 filename ENTER
As shown above, the pages value can be a single page, a range of pages, or a collection of page numbers and ranges separated by commas. The pages will always be printed in ascending order, regardless of the order of the pages in the page-ranges option.
The default is to print all pages.
Selecting Even or Odd Pages
Use the \-o page-set=set option to select the even or odd pages:
lp \-o page-set=odd filename ENTER
lp \-o page-set=even filename ENTER
lpr \-o page-set=even filename ENTER
The default is to print all pages.
Setting the Output Order
The the \-o outputorder=order option to set the output order of all pages:
lp \-o outputorder=normal filename ENTER
lp \-o outputorder=reverse filename ENTER
lpr \-o outputorder=reverse filename ENTER
N-Up Printing
The \-o number-up=value option selects N-Up printing. N-Up printing places multiple document pages on a single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is 1-Up:
lp \-o number-up=1 filename ENTER
lp \-o number-up=2 filename ENTER
lp \-o number-up=4 filename ENTER
lpr \-o number-up=16 filename ENTER
The \-o page-border=value option chooses the border to draw around each page:
* \-o page-border=double; draw two hairline borders around each page
* \-o page-border=double-thick; draw two 1pt borders around each page
* \-o page-border=none; do not draw a border (default)
* \-o page-border=single; draw one hairline border around each page
* \-o page-border=single-thick; draw one 1pt border around each page
The \-o number-up-layout=value option chooses the layout of the pages on each output page:
* \-o number-up-layout=btlr; Bottom to top, left to right
* \-o number-up-layout=btrl; Bottom to top, right to left
* \-o number-up-layout=lrbt; Left to right, bottom to top
* \-o number-up-layout=lrtb; Left to right, top to bottom (default)
* \-o number-up-layout=rlbt; Right to left, bottom to top
* \-o number-up-layout=rltb; Right to left, top to bottom
* \-o number-up-layout=tblr; Top to bottom, left to right
* \-o number-up-layout=tbrl; Top to bottom, right to left
Mirroring Prints
You can mirror a print using the \-o mirror option:
lp \-o mirror filename ENTER
lpr \-o mirror filename ENTER
This is useful for printing mirrored pages on transfer paper, for T shirts, mugs, etc.
Setting the Brightness
You can control the overall brightness of the printed output using the \-o brightness=percent option:
lp \-o brightness=120 filename ENTER
lpr \-o brightness=120 filename ENTER
Values greater than 100 will lighten the print, while values less than 100 will darken it.
Setting the Gamma Correction
You can control the overall gamma correction of the printed output using the \-o gamma=value option:
lp \-o gamma=1700 filename ENTER
lpr \-o gamma=1700 filename ENTER
Values greater than 1000 will lighten the print, while values less than 1000 will darken it. The default gamma is 1000.
Text Options
The following options apply when printing text files.
Setting the Number of Characters Per Inch
The \-o cpi=value option sets the number of characters per inch:
lp \-o cpi=10 filename ENTER
lp \-o cpi=12 filename ENTER
lpr \-o cpi=17 filename ENTER
The default characters per inch is 10.
Setting the Number of Lines Per Inch
The \-o lpi=value option sets the number of lines per inch:
lp \-o lpi=6 filename ENTER
lpr \-o lpi=8 filename ENTER
The default lines per inch is 6.
Setting the Number of Columns
The \-o columns=value option sets the number of text columns:
lp \-o columns=2 filename ENTER
lpr \-o columns=3 filename ENTER
The default number of columns is 1.
Setting the Page Margins
Normally the page margins are set to the hard limits of the printer. Use the \-o page-left=value, \-o page-right=value , \-o page-top=value, and \-o page-bottom=value options to adjust the page margins:
lp \-o page-left=value filename ENTER
lp \-o page-right=value filename ENTER
lp \-o page-top=value filename ENTER
lp \-o page-bottom=value filename ENTER
lpr \-o page-bottom=value filename ENTER
The value argument is the margin in points; each point is 1/72 inch or 0.35mm.
Pretty Printing
The \-o prettyprint option puts a header at the top of each page with the page number, job title (usually the filename), and the date. Also, C and C+\+ keywords are highlighted, and comment lines are italicized:
lp \-o prettyprint filename ENTER
lpr \-o prettyprint filename ENTER
Image Options
The following options apply when printing image files.
Positioning the Image
The \-o position=name option specifies the position of the image on the page:
* center - Center the image on the page (default)
* top - Print the image centered at the top of the page
* left - Print the image centered on the left of page
* right - Print the image centered on the right of the page
* top-left - Print the image at the top left corner of the page
* top-right - Print the image at the top right corner of the page
* bottom - Print the image centered at the bottom of the page
* bottom-left - Print the image at the bottom left corner of the page
* bottom-right - Print the image at the bottom right corner of the page
Scaling the Image
The \-o scaling=percent, \-o ppi=value, and \-o natural-scaling=percent options change the size of a printed image:
lp \-o scaling=percent filename ENTER
lp \-o ppi=value filename ENTER
lpr \-o natural-scaling=percent filename ENTER
The scaling=percent value is a number from 1 to 800 specifying the size in relation to the page (not the image.) A scaling of 100 percent will fill the page as completely as the image aspect ratio allows. A scaling of 200 percent will print on up to 4 pages.
The ppi=value value is a number from 1 to 1200 specifying the resolution of the image in pixels per inch. An image that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch, for example. If the specified resolution makes the image larger than the page, multiple pages will be printed to satisfy the request.
The natural-scaling=percent value is a number from 1 to 800 specifying the size in relation to the natural image size. A scaling of 100 percent will print the image at its natural size, while a scaling of 50 percent will print the image at half its natural size. If the specified scaling makes the image larger than the page, multiple pages will be printed to satisfy the request.
Adjusting the Hue (Tint) of an Image
The \-o hue=value option will adjust the hue of the printed image, much like the tint control on your television:
lp \-o hue=value filename ENTER
lpr \-o hue=value filename ENTER
The value argument is a number from \-360 to 360 and represents the color hue rotation. The following table summarizes the change you'll see with different colors:
Original hue=-45 hue=45
Red Purple Yellow-orange
Green Yellow-green Blue-green
Yellow Orange Green-yellow
Blue Sky-blue Purple
Magenta Indigo Crimson
Cyan Blue-green Light-navy-blue
The default hue adjustment is 0.
Adjusting the Saturation (Color) of an Image
The \-o saturation=percent option adjusts the saturation of the colors in an image, much like the color knob on your television:
lp \-o saturation=percent filename ENTER
lpr \-o saturation=percent filename ENTER
The percent argument specifies the color saturation from 0 to 200. A color saturation of 0 produces a black-and-white print, while a value of 200 will make the colors extremely intense.
The default saturation is 100.
HP-GL/2 Options
The following options apply to HP-GL/2 files.
Printing in Black
The \-o blackplot option specifies that all pens should plot in black:
lp \-o blackplot filename ENTER
lpr \-o blackplot filename ENTER
The default is to use the colors defined in the plot file or the standard pen colors defined in the HP-GL/2 reference manual from Hewlett Packard.
Fitting the Plot on the Page
The \-o fitplot option specifies that the plot should be scaled to fit on the page:
lp \-o fitplot filename ENTER
lpr \-o fitplot filename ENTER
The default is to use the absolute distances specified in the plot file.
NOTE:
This feature depends upon an accurate plot size (PS) command in the HP-GL/2 file. If no plot size is given in the file than the HP-GL/2 filter assumes the plot is ANSI E size.
Setting the Default Pen Width
The \-o penwidth=value option specifies the default pen width for HP-GL/2 files:
lp \-o penwidth=value filename ENTER
lpr \-o penwidth=value filename ENTER
The pen width value specifies the pen width in micrometers. The default value of 1000 produces lines that are 1 millimeter in width. Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.
NOTE:
This option is ignored when the pen widths are set in the plot file.
Raw or Unfiltered Output
The \-o raw option allows you to send files directly to a printer without filtering. This is sometimes required when printing from applications that provide their own "printer drivers" for your printer:
lp \-o raw filename ENTER
lpr \-o raw filename ENTER
The \-l option can also be used with the lpr command to send files directly to a printer:
lpr \-l filename ENTER
4 - Saving Printer Options and Defaults
This chapter describes how to save printer options for your printer and set your own default printer.
Printer Options
Each printer supports a large number of options, which you learned about in Chapter 3, "Standard Printer Options". Rather than specifying these options each time you print a file, CUPS allows you to save them as "default" options for the printer.
The lpoptions(1) command saves the options for your printers. Like the lp and lpr commands, it accepts printer options using the \-o argument:
lpoptions \-o prettyprint ENTER
lpoptions \-o media=A4 \-o sides=two-sided-long-edge ENTER
lpoptions \-o media=Legal \-o scaling=100 ENTER
Once saved, any lp or lpr command will use them when you print.
Note:
Running the lpoptions command as the root user (or any user with a UID of 0) will set the default options for all users. The root account does not have its own set of default options.
Setting Options for a Specific Printer
The previous example shows how to set the options for the default printer. The \-p printer option specifies the options are for another printer:
lpoptions \-p laserjet \-o prettyprint ENTER
lpoptions \-p laserjet \-o media=A4 \-o sides=two-sided-long-edge ENTER
lpoptions \-p deskjet \-o media=Legal \-o scaling=100 ENTER
Removing Options
The previous two examples shows how to set options for the default and a specific printer. Below, shows you how to remove the saved option using the \-r argument:
lpoptions \-r prettyprint ENTER
lpoptions \-p laserjet \-r prettyprint ENTER
Viewing the Current Defaults
The lpoptions command can also be used to show the current options by not specifying any new options on the command-line:
lpoptions ENTER
media=A4 sides=two-sided-long-edge
lpoptions \-p deskjet ENTER
media=Legal scaling=100
Viewing Options for a Specific Printer
You can display the supported options using the lpoptions command with the \-l option, as follows:
lpoptions \-p laserjet \-l ENTER
Setting the Default Printer
The administrator normally will set a system-wide default printer that is normally used as the default printer by everyone. Use the \-d printer option to set your own default printer:
lpoptions \-d deskjet ENTER
The printer can be local (deskjet) or remote ( deskjet@server).
Printer Instances
Besides setting options for each print queue, CUPS supports printer instances which allow you to define several different sets of options for each printer. You specify a printer instance using the slash (/) character:
lpoptions \-p laserjet/duplex \-o sides=two-sided-long-edge ENTER
lpoptions \-p laserjet/legal \-o media=Legal ENTER
The lp and lpr commands also understand this notation:
lp \-d laserjet/duplex filename ENTER
lpr \-P laserjet/legal filename ENTER
Removing Instances
Use the \-x printer/instance option to remove a printer instance that you no longer need:
lpoptions \-x laserjet ENTER
lpoptions \-x laserjet/duplex ENTER
lpoptions \-x laserjet/legal ENTER
The \-x option only removes the default options for that printer and instance; the original print queue will remain until deleted with the lpadmin(8) command by the administrator.
# Allow printing to printer MyLaserJet from
# itself and computers 192.10.2.5 and 192.10.2.6
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.5
Allow from 192.10.2.6
</Location>
# Allow printing to printer MyLaserJet from
# itself and all computers on subnet 192.10.2.x
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.0/255.255.255.0
</Location></property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-07-21 16:09:50.000
originalVersion: 3637388
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226238</id>
<property name="hibernateVersion">2</property>
<property name="title">CUPS Reference</property>
<property name="lowerTitle">cups reference</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">6258989</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 11:13:24.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-07-21 16:09:50.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637388</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 7241736
Fecha creación: 2008-03-07 08:28:19.000
<property name="body">h1. Remove unnecessary services
{code:borderStyle=solid}
chkconfig --del anacron
chkconfig --del autofs
chkconfig --del apmd
chkconfig --del atd
chkconfig --del gpm
chkconfig --del irda
chkconfig --del isdn
chkconfig --del netfs
chkconfig --del nfs
chkconfig --del nfslock
chkconfig --del nscd
chkconfig --del ntpd
chkconfig --del portmap
chkconfig --del sendmail
chkconfig --del smartd
chkconfig --del snmpd
chkconfig --del snmptrapd
chkconfig --del winbind
chkconfig --del ypbind
cd /etc/xinetd.d/
rm -rf /etc/xinetd.d/chargen*
rm -rf /etc/xinetd.d/daytime*
rm -rf /etc/xinetd.d/echo*
rm -rf /etc/xinetd.d/rsync*
rm -rf /etc/xinetd.d/time*
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-07 08:28:19.000
originalVersion: 2883660
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">7241736</id>
<property name="hibernateVersion">1</property>
<property name="title">Securing Linux</property>
<property name="lowerTitle">securing linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">7307268</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 08:28:19.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-07 08:28:19.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883660</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 8487052
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the isengard FTP server in the Tivoli\Linux or Tivoli\Windoze directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
{code}
Tivoli Upgrade Fix:
Upgrading Tivoli frequently breaks itself; this is the process to fix it after the fact.
1- Install the latest RPMS
2- Make soft links in the /usr/lib directory to all the .so files in /opt/tivoli/tsm/client/api/bin folder
cd /usr/lib
ln -s /opt/tivoli/tsm/client/api/bin/libct_cu.so libct_cu.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.4.1.0.so libxmlutil-5.4.1.0.so
3- Make a soft link in the /opt/tivoli/tsm/client/ba/bin folder to /opt/tivoli/tsm/client/lang/en_US
ln -s /opt/tivoli/tsm/client/lang/en_US/ en_US
4- Stop and Start the process.
{code}</property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-05-14 16:59:03.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8487052</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8519814</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-05-14 16:59:03.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 8487058
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the isengard FTP server in the Tivoli\Linux or Tivoli\Windoze directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
{code}
Tivoli Upgrade Fix:
Upgrading Tivoli frequently breaks itself; this is the process to fix it after the fact.
1- Install the latest RPMS
2- Make soft links in the /usr/lib directory to all the .so files in /opt/tivoli/tsm/client/api/bin folder
cd /usr/lib
ln -s /opt/tivoli/tsm/client/api/bin/libct_cu.so libct_cu.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.4.1.0.so libxmlutil-5.4.1.0.so
3- Make a soft link in the /opt/tivoli/tsm/client/ba/bin folder to /opt/tivoli/tsm/client/lang/en_US
ln -s /opt/tivoli/tsm/client/lang/en_US/ en_US
4- Stop and Start the process.
{code}
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien -i --scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
7. open port 1501 to the backup server in your firewall.
8. Ubuntu uses Upstart instead of inittabs. To add dsm to the
configuration, create a /etc/event.d/dsm-sched file containing:
----------------------- /etc/event.d/dsm-sched -----------------------
# dsm-sched
#
# This service starts the Tivoli Storage Manager "dsmc sched" backup
# process and respawns it as the scheduled backup happens or the
# dsmc process gets killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >/dev/null 2>&1
----------------------- end /etc/event.d/dsm-sched ----------------------------
9. Start the dsmc sched process
$ sudo start dsm-sched
10. Check to see if the /var/log/dsmsched.log is correct.
$ tail /var/log/dsmsched.log
06/29/07 13:33:13 --- SCHEDULEREC QUERY END
06/29/07 13:33:13 Next operation scheduled:
06/29/07 13:33:13 ------------------------------------------------------------
06/29/07 13:33:13 Schedule Name: AM0230
06/29/07 13:33:13 Action: Incremental
06/29/07 13:33:13 Objects:
06/29/07 13:33:13 Options:
06/29/07 13:33:13 Server Window Start: 02:30:00 on 06/30/07
06/29/07 13:33:13 ------------------------------------------------------------
06/29/07 13:33:13 Waiting to be contacted by the server.
11. If you wish to use the dsmj GUI, you must also install a Java
runtime environment. There are several of these available, and JREs
are backwards compatible.
$ sudo apt-get install sun-java6-bin
Note that the dsmj seems to want to run with root permissions. To run it, use:
$ sudo dsmj
\\</property>
hibernateVersion: 2
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-10-28 08:40:20.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8487058</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8519820</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-10-28 08:40:20.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 8749165
Fecha creación: 2008-11-11 08:11:18.000
<property name="body"><ac:structured-macro ac:macro-id="0b8aa59c-099c-41a4-a993-af61a5605219" ac:name="attachments" ac:schema-version="1"><ac:parameter ac:name="old">true</ac:parameter></ac:structured-macro></property>
hibernateVersion: 5
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-11-12 08:10:59.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
Colección: attachments
Colección: comments
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749165</id>
<property name="hibernateVersion">5</property>
<property name="title">vi Cheat Sheet</property>
<property name="lowerTitle">vi cheat sheet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8781925</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454119</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-11-11 08:11:18.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-11-12 08:10:59.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584998</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749196</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182244</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<collection name="attachments" class="java.util.Collection">
<element class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">9109517</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">9109519</id>
</element>
</collection>
<collection name="comments" class="java.util.Set">
<element class="Comment" package="com.atlassian.confluence.pages">
<id name="id">8749166</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 8749169
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the isengard FTP server in the Tivoli\Linux or Tivoli\Windoze directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
{code}
Tivoli Upgrade Fix:
Upgrading Tivoli frequently breaks itself; this is the process to fix it after the fact.
1- Install the latest RPMS
2- Make soft links in the /usr/lib directory to all the .so files in /opt/tivoli/tsm/client/api/bin folder
cd /usr/lib
ln -s /opt/tivoli/tsm/client/api/bin/libct_cu.so libct_cu.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.4.1.0.so libxmlutil-5.4.1.0.so
3- Make a soft link in the /opt/tivoli/tsm/client/ba/bin folder to /opt/tivoli/tsm/client/lang/en_US
ln -s /opt/tivoli/tsm/client/lang/en_US/ en_US
4- Stop and Start the process.
{code}
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
7. open port 1501 to the backup server in your firewall.
8. Ubuntu uses Upstart instead of inittabs. To add dsm to the
configuration, create a /etc/event.d/dsm-sched file containing:
\----------------------\- /etc/event.d/dsm-sched \----------------------\-
{code}
#dsm-sched
# This service starts the Tivoli Storage Manager "dsmc sched" backup
# process and respawns it as the scheduled backup happens or the
# dsmc process gets killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >/dev/null 2>&1
{code}
\----------------------\- end /etc/event.d/dsm-sched \---------------------------\-
9. Start the dsmc sched process
$ sudo start dsm-sched
10. Check to see if the /var/log/dsmsched.log is correct.
$ tail /var/log/dsmsched.log
06/29/07 13:33:13 --- SCHEDULEREC QUERY END
06/29/07 13:33:13 Next operation scheduled:
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Schedule Name: AM0230
06/29/07 13:33:13 Action: Incremental
06/29/07 13:33:13 Objects:
06/29/07 13:33:13 Options:
06/29/07 13:33:13 Server Window Start: 02:30:00 on 06/30/07
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Waiting to be contacted by the server.
11. If you wish to use the dsmj GUI, you must also install a Java
runtime environment. There are several of these available, and JREs
are backwards compatible.
$ sudo apt-get install sun-java6-bin
Note that the dsmj seems to want to run with root permissions. To run it, use:
$ sudo dsmj
\\</property>
hibernateVersion: 2
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-10-28 09:31:52.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749169</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8781929</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-10-28 09:31:52.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 8749190
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the isengard FTP server in the Tivoli\Linux or Tivoli\Windoze directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to either make soft links in the /usr/lib directory to all the .so files in /opt/tivoli/tsm/client/api/bin folder
{code}
cd /usr/lib
ln -s /opt/tivoli/tsm/client/api/bin/libct_cu.so libct_cu.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.4.1.0.so libxmlutil-5.4.1.0.so
{code}
or, a perhaps easier alternative, is to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin/
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Notes
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
7. open port 1501 to the backup server in your firewall.
8. Ubuntu uses Upstart instead of inittabs. To add dsm to the
configuration, create a /etc/event.d/dsm-sched file containing:
\----------------\--\--\--\- /etc/event.d/dsm-sched \--\--\------------------\-
{code}
#dsm-sched
# This service starts the Tivoli Storage Manager "dsmc sched" backup
# process and respawns it as the scheduled backup happens or the
# dsmc process gets killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >/dev/null 2>&1
{code}
\----------------\--\--\--\- end /etc/event.d/dsm-sched \--\--\-----------------------\-
9. Start the dsmc sched process
$ sudo start dsm-sched
10. Check to see if the /var/log/dsmsched.log is correct.
$ tail /var/log/dsmsched.log
06/29/07 13:33:13 --- SCHEDULEREC QUERY END
06/29/07 13:33:13 Next operation scheduled:
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Schedule Name: AM0230
06/29/07 13:33:13 Action: Incremental
06/29/07 13:33:13 Objects:
06/29/07 13:33:13 Options:
06/29/07 13:33:13 Server Window Start: 02:30:00 on 06/30/07
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Waiting to be contacted by the server.
11. If you wish to use the dsmj GUI, you must also install a Java
runtime environment. There are several of these available, and JREs
are backwards compatible.
$ sudo apt-get install sun-java6-bin
Note that the dsmj seems to want to run with root permissions. To run it, use:
$ sudo dsmj
\\</property>
hibernateVersion: 2
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2d0007
lastModificationDate: 2008-11-11 08:58:40.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749190</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8781948</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2d0007</id>
</property>
<property name="lastModificationDate">2008-11-11 08:58:40.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 8749191
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to either make soft links in the /usr/lib directory to all the .so files in /opt/tivoli/tsm/client/api/bin folder
{code}
cd /usr/lib
ln -s /opt/tivoli/tsm/client/api/bin/libct_cu.so libct_cu.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.4.1.0.so libxmlutil-5.4.1.0.so
{code}
or, a perhaps easier alternative, is to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin/
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Notes
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
7. open port 1501 to the backup server in your firewall.
8. Ubuntu uses Upstart instead of inittabs. To add dsm to the
configuration, create a /etc/event.d/dsm-sched file containing:
\--------------\--\--\--\--\- /etc/event.d/dsm-sched --\--\------------------\-
{code}
#dsm-sched
# This service starts the Tivoli Storage Manager "dsmc sched" backup
# process and respawns it as the scheduled backup happens or the
# dsmc process gets killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >/dev/null 2>&1
{code}
\--------------\--\--\--\--\- end /etc/event.d/dsm-sched --\--\-----------------------\-
9. Start the dsmc sched process
$ sudo start dsm-sched
10. Check to see if the /var/log/dsmsched.log is correct.
$ tail /var/log/dsmsched.log
06/29/07 13:33:13 --- SCHEDULEREC QUERY END
06/29/07 13:33:13 Next operation scheduled:
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Schedule Name: AM0230
06/29/07 13:33:13 Action: Incremental
06/29/07 13:33:13 Objects:
06/29/07 13:33:13 Options:
06/29/07 13:33:13 Server Window Start: 02:30:00 on 06/30/07
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Waiting to be contacted by the server.
11. If you wish to use the dsmj GUI, you must also install a Java
runtime environment. There are several of these available, and JREs
are backwards compatible.
$ sudo apt-get install sun-java6-bin
Note that the dsmj seems to want to run with root permissions. To run it, use:
$ sudo dsmj
\\</property>
hibernateVersion: 2
version: 9
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2d0007
lastModificationDate: 2008-11-11 14:43:46.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749191</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8781949</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2d0007</id>
</property>
<property name="lastModificationDate">2008-11-11 14:43:46.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 8749193
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to either make soft links in the /usr/lib directory to all the .so files in /opt/tivoli/tsm/client/api/bin folder
{code}
cd /usr/lib
ln -s /opt/tivoli/tsm/client/api/bin/libct_cu.so libct_cu.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.4.1.0.so libxmlutil-5.4.1.0.so
{code}
or, a perhaps easier alternative, is to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Notes
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
7. open port 1501 to the backup server in your firewall.
8. Ubuntu uses Upstart instead of inittabs. To add dsm to the
configuration, create a /etc/event.d/dsm-sched file containing:
\------------\--\--\--\--\--\- /etc/event.d/dsm-sched \--\--\------------------\-
{code}
#dsm-sched
# This service starts the Tivoli Storage Manager "dsmc sched" backup
# process and respawns it as the scheduled backup happens or the
# dsmc process gets killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >/dev/null 2>&1
{code}
\------------\--\--\--\--\--\- end /etc/event.d/dsm-sched \--\--\-----------------------\-
9. Start the dsmc sched process
$ sudo start dsm-sched
10. Check to see if the /var/log/dsmsched.log is correct.
$ tail /var/log/dsmsched.log
06/29/07 13:33:13 --- SCHEDULEREC QUERY END
06/29/07 13:33:13 Next operation scheduled:
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Schedule Name: AM0230
06/29/07 13:33:13 Action: Incremental
06/29/07 13:33:13 Objects:
06/29/07 13:33:13 Options:
06/29/07 13:33:13 Server Window Start: 02:30:00 on 06/30/07
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Waiting to be contacted by the server.
11. If you wish to use the dsmj GUI, you must also install a Java
runtime environment. There are several of these available, and JREs
are backwards compatible.
$ sudo apt-get install sun-java6-bin
Note that the dsmj seems to want to run with root permissions. To run it, use:
$ sudo dsmj
\\</property>
hibernateVersion: 2
version: 10
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2d0007
lastModificationDate: 2008-11-11 15:35:29.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749193</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8781951</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2d0007</id>
</property>
<property name="lastModificationDate">2008-11-11 15:35:29.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 8749196
Fecha creación: 2008-11-11 08:11:18.000
<property name="body" />
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-11-11 08:11:18.000
originalVersion: 8749165
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749196</id>
<property name="hibernateVersion">1</property>
<property name="title">vi Cheat Sheet</property>
<property name="lowerTitle">vi cheat sheet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8781954</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-11-11 08:11:18.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-11-11 08:11:18.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749165</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 8749420
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Notes
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
7. open port 1501 to the backup server in your firewall.
8. Ubuntu uses Upstart instead of inittabs. To add dsm to the
configuration, create a /etc/event.d/dsm-sched file containing:
\----------\--\--\--\--\--\--\- /etc/event.d/dsm-sched --\--\------------------\-
{code}
#dsm-sched
# This service starts the Tivoli Storage Manager "dsmc sched" backup
# process and respawns it as the scheduled backup happens or the
# dsmc process gets killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >/dev/null 2>&1
{code}
\----------\--\--\--\--\--\--\- end /etc/event.d/dsm-sched --\--\-----------------------\-
9. Start the dsmc sched process
$ sudo start dsm-sched
10. Check to see if the /var/log/dsmsched.log is correct.
$ tail /var/log/dsmsched.log
06/29/07 13:33:13 --- SCHEDULEREC QUERY END
06/29/07 13:33:13 Next operation scheduled:
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Schedule Name: AM0230
06/29/07 13:33:13 Action: Incremental
06/29/07 13:33:13 Objects:
06/29/07 13:33:13 Options:
06/29/07 13:33:13 Server Window Start: 02:30:00 on 06/30/07
06/29/07 13:33:13 \-----------------------------------------------------------\-
06/29/07 13:33:13 Waiting to be contacted by the server.
11. If you wish to use the dsmj GUI, you must also install a Java
runtime environment. There are several of these available, and JREs
are backwards compatible.
$ sudo apt-get install sun-java6-bin
Note that the dsmj seems to want to run with root permissions. To run it, use:
$ sudo dsmj
\\</property>
hibernateVersion: 2
version: 11
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-11-11 15:37:12.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749420</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8782172</id>
</element>
</collection>
<property name="version">11</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-11-11 15:37:12.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 8749480
Fecha creación: 2008-12-02 09:24:48.000
<property name="body"><h3>Create a file called suu_startup in the /etc/init.d directory. Be sure to replace &lt;server&gt; with your server's name, i.e. oak, aspen, etc. Save file and proceed to next steps.</h3>
<ac:structured-macro ac:macro-id="1ec53806-71ac-45f7-8f38-e797e706898c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#!/bin/bash
#
# chkconfig: 35 98 01
# description: Starts Oracle Application Server software
#
export SOURCE=/u01/app/oracle/scripts
export USER=root
touch /var/lock/subsys/suu_startup
case "$1" in
start)
echo -n "Starting suu_startup"
if [ -f "$SOURCE/start<server>.ksh" ]; then
$SOURCE/start<server>.ksh #> /tmp/start<server>.log 2>&1
fi
;;
stop)
echo -n "Stopping suu_startup"
if [ -f "$SOURCE/stop<server>.ksh" ]; then
$SOURCE/stop<server>.ksh #> /tmp/stop<server>.log 2>&1
fi
;;
*)
printf "Usage: `basename $0` {start | stop}\n"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:structured-macro>
<h4>Step 2 - chmod 755 suu_startup</h4>
<h4>Step 3 - chkconfig --add suu_startup</h4>
<h4>Step 4 - chkconfig --level 345 suu_startup on</h4></property>
hibernateVersion: 4
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-12-02 09:43:28.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749480</id>
<property name="hibernateVersion">4</property>
<property name="title">Oracle Database Startup and Shutdown Script (Template)</property>
<property name="lowerTitle">oracle database startup and shutdown script (template)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8782231</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454094</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-12-02 09:24:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-12-02 09:43:28.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585035</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749482</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182332</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 8749482
Fecha creación: 2008-12-02 09:24:48.000
<property name="body">h3. Be sure to replace <server> with your server's name, i.e. oak, aspen, etc.
{code}
#!/bin/bash
#
# chkconfig: 35 98 01
# description: Starts Oracle Application Server software
#
export SOURCE=/u01/app/oracle/scripts
export USER=root
touch /var/lock/subsys/suu_startup
case "$1" in
start)
echo -n "Starting suu_startup"
if [ -f "$SOURCE/start<server>.ksh" ]; then
$SOURCE/start<server>.ksh #> /tmp/start<server>.log 2>&1
fi
;;
stop)
echo -n "Stopping suu_startup"
if [ -f "$SOURCE/stop<server>.ksh" ]; then
$SOURCE/stop<server>.ksh #> /tmp/stop<server>.log 2>&1
fi
;;
*)
printf "Usage: `basename $0` {start | stop}\n"
exit 1
;;
esac
exit 0
{code}</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-12-02 09:24:48.000
originalVersion: 8749480
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749482</id>
<property name="hibernateVersion">2</property>
<property name="title">Oracle Database Startup and Shutdown Script (Template)</property>
<property name="lowerTitle">oracle database startup and shutdown script (template)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">8782233</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-12-02 09:24:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-12-02 09:24:48.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749480</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 10223743
Fecha creación: 2009-01-14 11:29:48.000
<property name="body"><p>First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as. The example given here is from our xmlbill server.</p>
<h2>Tomcat Startup Script</h2>
<h5>Step 1: To make Tomcat start automatically, you must create a file in /etc/init.d called tomcat. Populate the file with the following:</h5>
<ac:structured-macro ac:macro-id="a71495cc-57b2-4302-89a4-28673aa44970" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=/home/billservice/apps/apache-tomcat-6.0.18
export TOMCAT_USER=billservice
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
]] ></ac:plain-text-body></ac:structured-macro>
<p>A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).</p>
<h5>Set to start automatically</h5>
<p>Run the following commands as root:</p>
<ac:structured-macro ac:macro-id="91ad35ee-de98-44cf-a181-b761c4ad57f1" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#chmod 755 /etc/init.d/tomcat
#update-rc.d tomcat defaults
]] ></ac:plain-text-body></ac:structured-macro>
<p>That's it; reboot to verify that everything starts the way you expect.</p></property>
hibernateVersion: 10
version: 9
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2010-07-20 07:57:05.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
Colección: labellings
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
<property name="hibernateVersion">10</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">10256506</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454158</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2010-07-20 07:57:05.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223745</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223747</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223749</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681449</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585159</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681557</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">18841879</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182621</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<collection name="labellings" class="java.util.Collection">
<element class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">12779582</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 10223745
Fecha creación: 2009-01-14 11:29:48.000
<property name="body">First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as.</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-01-14 11:29:48.000
originalVersion: 10223743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223745</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">10256508</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-01-14 11:29:48.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 10223747
Fecha creación: 2009-01-14 11:29:48.000
<property name="body">First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as. The example given here is from our xmlbill server.
To make Tomcat start automatically, you must create a file in /etc/init.d called tomcat. Populate the file with the following:
{code}
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
# See how we were called.
case $1 in
start)
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/startup.sh"
;;
stop)
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/shutdown.sh"
;;
restart)
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/shutdown.sh"
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
{code}
</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-01-14 11:40:23.000
originalVersion: 10223743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223747</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">10256510</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-01-14 11:40:23.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 10223749
Fecha creación: 2009-01-14 11:29:48.000
<property name="body">First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as. The example given here is from our xmlbill server.
To make Tomcat start automatically, you must create a file in /etc/init.d called tomcat. Populate the file with the following:
{code}
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
# See how we were called.
case $1 in
start)
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/startup.sh"
;;
stop)
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/shutdown.sh"
;;
restart)
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/shutdown.sh"
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
{code}
A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-01-14 11:43:08.000
originalVersion: 10223743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223749</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">10256512</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-01-14 11:43:08.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 10223857
Fecha creación: 2009-01-29 10:13:20.000
<property name="body"><p>Put the following in the /etc/ntp.conf file:</p>
<p>restrict default nomodify notrap noquery nopeer kod<br />
restrict 127.0.0.1<br />
server time.suu.edu<br />
server time2.suu.edu<br />
driftfile /var/lib/ntp/drift<br />
broadcastdelay&nbsp; 0.008<br class="atl-forced-newline" /></p>
<p>Put the following in the /etc/ntp/step-tickers file:\\</p>
<p>time.suu.edu<br />
time2.suu.edu</p></property>
hibernateVersion: 4
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-01-29 11:06:34.000
versionComment: Migrated to Confluence 4.0
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223857</id>
<property name="hibernateVersion">4</property>
<property name="title">NTP Configuration for physical linux hosts</property>
<property name="lowerTitle">ntp configuration for physical linux hosts</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">10256614</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">10518973</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-29 10:13:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-01-29 11:06:34.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223859</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223858</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182673</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 10223858
Fecha creación: 2009-01-29 10:13:20.000
<property name="body">Put the following in the /etc/ntp.conf file:
restrict default nomodify notrap noquery nopeer kod
restrict 127.0.0.1
server time.suu.edu
server time2.suu.edu
driftfile /var/lib/ntp/drift
broadcastdelay&nbsp; 0.008</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-01-29 10:13:20.000
originalVersion: 10223857
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223858</id>
<property name="hibernateVersion">1</property>
<property name="title">NTP Configuration for physical linux hosts</property>
<property name="lowerTitle">ntp configuration for physical linux hosts</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">10256615</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-29 10:13:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-01-29 10:13:20.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223857</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 10223859
Fecha creación: 2009-01-29 10:13:20.000
<property name="body">Put the following in the /etc/ntp.conf file:
restrict default nomodify notrap noquery nopeer kod
restrict 127.0.0.1
server time.suu.edu
server time2.suu.edu
driftfile /var/lib/ntp/drift
broadcastdelay&nbsp; 0.008\\
Put the following in the /etc/ntp/step-tickers file:\\
time.suu.edu
time2.suu.edu
127.127.1.0 </property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-01-29 10:14:26.000
originalVersion: 10223857
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223859</id>
<property name="hibernateVersion">1</property>
<property name="title">NTP Configuration for physical linux hosts</property>
<property name="lowerTitle">ntp configuration for physical linux hosts</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">10256616</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-29 10:13:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-01-29 10:14:26.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223857</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 10715138
Fecha creación: 2009-02-04 09:40:47.000
<property name="body"><p>433179154336b579</p></property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-02-04 09:40:48.000
versionComment: Migrated to Confluence 4.0
contentStatus: deleted
space: 3014657
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">10715138</id>
<property name="hibernateVersion">2</property>
<property name="title">Red Hat 5 installation key</property>
<property name="lowerTitle">red hat 5 installation key</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">10747905</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-02-04 09:40:47.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-02-04 09:40:48.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182683</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 10977373
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude /.../core
exclude /.../tmp/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Notes
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
Remember to automate startup via a script in the /etc/init.d directory</property>
hibernateVersion: 2
version: 12
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-11-21 08:54:56.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">10977373</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">11010141</id>
</element>
</collection>
<property name="version">12</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-11-21 08:54:56.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 11239452
Fecha creación: 2008-04-14 09:09:26.000
<property name="body">{code}
The key to creating self-signing certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
{code}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-05-20 17:50:08.000
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239452</id>
<property name="hibernateVersion">1</property>
<property name="title">Managing Self-signed Certificates on Tomcat</property>
<property name="lowerTitle">managing self-signed certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">11272219</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-05-20 17:50:08.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 11239454
Fecha creación: 2009-02-27 08:24:05.000
<property name="body"><p>Command to remove iptables from Red Hat linux boxes:
<br class="atl-forced-newline" /></p>
<p>&nbsp;rpm -e iptables iptables-ipv6 iptstate system-config-securitylevel system-config-securitylevel-tui firstboot system-config-keyboard firstboot-tui system-config-boot libvirt libvirt-python rhn-virtualization-host</p></property>
hibernateVersion: 4
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-11-17 08:32:56.000
versionComment: Migrated to Confluence 4.0
contentStatus: deleted
space: 3014657
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239454</id>
<property name="hibernateVersion">4</property>
<property name="title">Remove linux firewall</property>
<property name="lowerTitle">remove linux firewall</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">11272221</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-02-27 08:24:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-11-17 08:32:56.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">14712975</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681401</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182698</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 11239462
Fecha creación: 2008-04-14 09:09:26.000
<property name="body">{code}
The key to creating self-signing certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
{code}
On the ipsca website:
{color:#333333}&nbsp;{color}{color:#333333}&nbsp;{color}
| {color:#2c63ca}&nbsp;Certificate installation{color} | \\ |
{color:#333333}Installing your Certificate with Jakarta-Tomcat.{color}
{color:#333333}(For Linux & Windows){color}{color:#333333}&nbsp;{color}
| {color:#333333}This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.{color} || {color:#333333}{*}Creating a Certificate Signing Request{*}{color}\\
| {color:#333333}Follow these instructions to generate a CSR for your Web site. When you have completed this process, you will have a CSR ready to submit to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}in order to be generated into a SSL Security Certificate.{color}\\
{color:#333333}If you are not using JDK 1.4 or higher, you must download and install "Java Secure Socket Extensions" JSSE.{color}\\
{color:#333333}1. Generate a private key with the following command:{color}\\
{color:#333333}$JAVA_HOME/bin/keytool \-genkey \-alias tomcat \-keyalg RSA \-keystore /path/to/domainname.kdb{color}\\
{color:#333333}You will be prompted for a password. Tomcat uses a default password of "changeit". If you use a different password, you will need to specify a custom password in the server.xml configuration file.{color}\\
{color:#333333}In the next field you will be asked "What is your first and last name?" At this prompt, you must specify the common name (FQDN) of your web site.{color}\\
{color:#333333}You will then be prompted for your organizational unit, organization, etc.{color}\\
{color:#333333}.2. Generate the Certificate Signing Request (CSR){color}\\
{color:#333333}$JAVA_HOME/bin/keytool \-certreq \-alias tomcat \-keystore /path/to/keystore.kdb \-file filename.csr{color}\\
{color:#333333}You will not be prompted for the common name, organization, etc. The keytool will use the values that you specify when generating the private key.{color}\\
{color:#333333}3. Now go to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include \-----BEGIN NEW CERTIFICATE REQUEST----\- and \-----END NEW CERTIFICATE REQUEST-----.{color}\\
{color:#333333}4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.{color}\\ | |
| {color:#333333}{*}Installing a Server Digital Certificate{*}{color}\\
| {color:#333333}{*}Upload a New SSL Certificate{*}{color}\\
{color:#333333}After you receive your certificate,{color}{color:#333333}&nbsp;{color}{color:#333333}{*}two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1{*}{color}{color:#333333}.{color}{color:#333333}&nbsp;{color}{color:#333333}{*}It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections{*}{color}{color:#333333}&nbsp;{color}{color:#333333}with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:{color}\\
IPSServidores.crt\\
IPSCACLASEA1.crt\\
IPS-IPSCABUNDLE.CRT\\
{color:#333333}You must first export the certificates in the following format:{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSCACLASEA1 Chained CA certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}chain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy your{color}{color:#333333}&nbsp;{color}{color:#333333}{_}web server certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}{_}yourdomain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSServidores root CA{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}{_}certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}root.cer{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Double-click the root.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}
# {color:#333333}Double-click the chain.cer and select Install. Choose "Place all certificates in following store" and select Intermediate Certification Authorities. Complete the Wizard.{color}
# {color:#333333}Double-click the chain.cer again and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}
# {color:#333333}Double click the youdomain.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}PKCS#7 (p7b)*{color}{color:#333333}&nbsp;{color}{color:#333333}option, also select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Include all certificates in the certification path{*}{color}{color:#333333}, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b{*}{color}{color:#333333}{*}The following certificate installations must be executed in the stated order.*{color}\\
{color:#333333}1. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}and{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}files using:{color}{color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias root - file root_der.cer{*}{color}\\
{color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias chain - file chain_der.cer{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\
{color:#333333}2. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b file{*}{color}{color:#333333}&nbsp;{color}{color:#333333}using:{color}{color:#333333}{*}keytool \-import \-trustcacerts \-keystore my.kdb \-alias tomcat \-file yourdomain.p7b{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\
{color:#333333}&nbsp;{color}\\
{color:#333333}{*}Update server.xml configuration file:*{color}\\
{color:#333333}1. Open "$JAKARTA_HOME/conf/server.xml" in a text editor.{color}\\
{color:#333333}2. Find the following section:{color}\\
{color:#333333}<Connector{color}{color:#333333}&nbsp;{color}\\
{color:#333333}...{color}{color:#333333}&nbsp;{color}\\
{color:#333333}scheme="https"{color}{color:#333333}&nbsp;{color}\\
{color:#333333}secure="true"{color}{color:#333333}&nbsp;{color}\\
{color:#333333}keystoreFile="/pathto/my.kdb"{color}{color:#333333}&nbsp;{color}\\
{color:#333333}keystorePass="mypassword"{color}\\
{color:#333333}3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.{color}\\
{color:#333333}4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.{color}\\
{color:#333333}5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows){color} | |</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-02-25 14:24:00.000
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239462</id>
<property name="hibernateVersion">1</property>
<property name="title">Managing Self-signed Certificates on Tomcat</property>
<property name="lowerTitle">managing self-signed certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">11272229</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-02-25 14:24:00.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 11239633
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc i
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Notes
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
Remember to automate startup via a script in the /etc/init.d directory</property>
hibernateVersion: 2
version: 13
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-02-19 14:12:40.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239633</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">11272399</id>
</element>
</collection>
<property name="version">13</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-02-19 14:12:40.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 11239634
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt. You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away, just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Notes
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
Remember to automate startup via a script in the /etc/init.d directory</property>
hibernateVersion: 2
version: 14
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-03-16 16:56:15.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239634</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">11272400</id>
</element>
</collection>
<property name="version">14</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-03-16 16:56:15.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 11927675
Fecha creación: 2008-04-14 09:09:26.000
<property name="body">{code}
The key to creating self-signing certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
{code}
On the ipsca website:
{color:#333333}&nbsp;{color}{color:#333333}&nbsp;{color}
| {color:#2c63ca}&nbsp;Certificate installation{color} | \\ |
{color:#333333}Installing your Certificate with Jakarta-Tomcat.{color}
{color:#333333}(For Linux & Windows){color}{color:#333333}&nbsp;{color}
| {color:#333333}This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.{color} || {color:#333333}{*}Creating a Certificate Signing Request{*}{color}\\ |
| {color:#333333}Follow these instructions to generate a CSR for your Web site. When you have completed this process, you will have a CSR ready to submit to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}in order to be generated into a SSL Security Certificate.{color}\\ {color:#333333}If you are not using JDK 1.4 or higher, you must download and install "Java Secure Socket Extensions" JSSE.{color}\\ {color:#333333}1. Generate a private key with the following command:{color}\\ {color:#333333}$JAVA_HOME/bin/keytool \-genkey \-alias tomcat \-keyalg RSA \-keystore /path/to/domainname.kdb{color}\\ {color:#333333}You will be prompted for a password. Tomcat uses a default password of "changeit". If you use a different password, you will need to specify a custom password in the server.xml configuration file.{color}\\ {color:#333333}In the next field you will be asked "What is your first and last name?" At this prompt, you must specify the common name (FQDN) of your web site.{color}\\ {color:#333333}You will then be prompted for your organizational unit, organization, etc.{color}\\ {color:#333333}.2. Generate the Certificate Signing Request (CSR){color}\\ {color:#333333}$JAVA_HOME/bin/keytool \-certreq \-alias tomcat \-keystore /path/to/keystore.kdb \-file filename.csr{color}\\ {color:#333333}You will not be prompted for the common name, organization, etc. The keytool will use the values that you specify when generating the private key.{color}\\ {color:#333333}3. Now go to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include \---\-{color}{color:#333333}{-}BEGIN NEW CERTIFICATE REQUEST{-}{color}{color:#333333}\-\-{color}{color:#333333}-\- and --{color}{color:#333333}\-\-{color}{color:#333333}{-}END NEW CERTIFICATE REQUEST{-}{color}{color:#333333}\----.{color}\\ {color:#333333}4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.{color}\\ | |
| {color:#333333}{*}Installing a Server Digital Certificate{*}{color}\\ |
| {color:#333333}{*}Upload a New SSL Certificate{*}{color}\\ {color:#333333}After you receive your certificate,{color}{color:#333333}&nbsp;{color}{color:#333333}{*}two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1{*}{color}{color:#333333}.{color}{color:#333333}&nbsp;{color}{color:#333333}{*}It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections{*}{color}{color:#333333}&nbsp;{color}{color:#333333}with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:{color}\\
IPSServidores.crt \\
IPSCACLASEA1.crt \\
IPS-IPSCABUNDLE.CRT \\ {color:#333333}You must first export the certificates in the following format:{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSCACLASEA1 Chained CA certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}chain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy your{color}{color:#333333}&nbsp;{color}{color:#333333}{_}web server certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}{_}yourdomain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSServidores root CA{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}{_}certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}root.cer{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Double-click the root.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}
# {color:#333333}Double-click the chain.cer and select Install. Choose "Place all certificates in following store" and select Intermediate Certification Authorities. Complete the Wizard.{color}
# {color:#333333}Double-click the chain.cer again and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}
# {color:#333333}Double click the youdomain.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}PKCS#7 (p7b)*{color}{color:#333333}&nbsp;{color}{color:#333333}option, also select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Include all certificates in the certification path{*}{color}{color:#333333}, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b{*}{color}{color:#333333}{*}The following certificate installations must be executed in the stated order.*{color}\\ {color:#333333}1. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}and{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}files using:{color}{color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias root - file root_der.cer{*}{color}\\ {color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias chain - file chain_der.cer{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}2. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b file{*}{color}{color:#333333}&nbsp;{color}{color:#333333}using:{color}{color:#333333}{*}keytool \-import \-trustcacerts \-keystore my.kdb \-alias tomcat \-file yourdomain.p7b{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}&nbsp;{color}\\ {color:#333333}{*}Update server.xml configuration{color} {color:#333333}[file:*]{color}\\ {color:#333333}1. Open "$JAKARTA_HOME/conf/server.xml" in a text editor.{color}\\ {color:#333333}2. Find the following section:{color}\\ {color:#333333}<Connector{color}{color:#333333}&nbsp;{color}\\ {color:#333333}...{color}{color:#333333}&nbsp;{color}\\ {color:#333333}scheme="https"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}secure="true"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystoreFile="/pathto/my.kdb"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystorePass="mypassword"{color}\\ {color:#333333}3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.{color}\\ {color:#333333}4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.{color}\\ {color:#333333}5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows){color} | |</property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-03-02 08:09:27.000
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">11927675</id>
<property name="hibernateVersion">2</property>
<property name="title">Managing Certificates on Tomcat</property>
<property name="lowerTitle">managing certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">11960439</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-03-02 08:09:27.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 11927677
Fecha creación: 2008-04-14 09:09:26.000
<property name="body">{code}
The key to creating self-signing certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
{code}
On the ipsca website:
{color:#333333}&nbsp;{color}{color:#333333}&nbsp;{color}
| {color:#2c63ca}&nbsp;Certificate installation{color} | \\ |
{color:#333333}Installing your Certificate with Jakarta-Tomcat.{color}
{color:#333333}(For Linux & Windows){color}{color:#333333}&nbsp;{color}
| {color:#333333}This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.{color} || {color:#333333}{*}Creating a Certificate Signing Request{*}{color}\\ |
| {color:#333333}Follow these instructions to generate a CSR for your Web site. When you have completed this process, you will have a CSR ready to submit to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}in order to be generated into a SSL Security Certificate.{color}\\ {color:#333333}If you are not using JDK 1.4 or higher, you must download and install "Java Secure Socket Extensions" JSSE.{color}\\ {color:#333333}1. Generate a private key with the following command:{color}\\ {color:#333333}*$JAVA_HOME/bin/keytool \-genkey \-alias tomcat \-keyalg RSA \-keystore /path/to/domainname.kdb*{color}\\ {color:#333333}You will be prompted for a password. Tomcat uses a default password of "changeit". If you use a different password, you will need to specify a custom password in the server.xml configuration file.{color}\\ {color:#333333}In the next field you will be asked "What is your first and last name?" At this prompt, you must specify the common name (FQDN) of your web site.{color}\\ {color:#333333}You will then be prompted for your organizational unit, organization, etc.{color}\\ {color:#333333}.2. Generate the Certificate Signing Request (CSR){color}\\ {color:#333333}$JAVA_HOME/bin/keytool \-certreq \-alias tomcat \-keystore /path/to/keystore.kdb \-file filename.csr{color}\\ {color:#333333}You will not be prompted for the common name, organization, etc. The keytool will use the values that you specify when generating the private key.{color}\\ {color:#333333}3. Now go to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include \---\-{color}{color:#333333}{-}BEGIN NEW CERTIFICATE REQUEST{-}{color}{color:#333333}\-\-{color}{color:#333333}-\- and --{color}{color:#333333}\-\-{color}{color:#333333}{-}END NEW CERTIFICATE REQUEST{-}{color}{color:#333333}\----.{color}\\ {color:#333333}4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.{color}\\ | |
| {color:#333333}{*}Installing a Server Digital Certificate{*}{color}\\ |
| {color:#333333}{*}Upload a New SSL Certificate{*}{color}\\ {color:#333333}After you receive your certificate,{color}{color:#333333}&nbsp;{color}{color:#333333}{*}two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1{*}{color}{color:#333333}.{color}{color:#333333}&nbsp;{color}{color:#333333}{*}It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections{*}{color}{color:#333333}&nbsp;{color}{color:#333333}with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:{color}\\
IPSServidores.crt \\
IPSCACLASEA1.crt \\
IPS-IPSCABUNDLE.CRT \\ {color:#333333}You must first export the certificates in the following format:{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSCACLASEA1 Chained CA certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}chain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy your{color}{color:#333333}&nbsp;{color}{color:#333333}{_}web server certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}{_}yourdomain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSServidores root CA{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}{_}certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}root.cer{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Double-click the root.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}
# {color:#333333}Double-click the chain.cer and select Install. Choose "Place all certificates in following store" and select Intermediate Certification Authorities. Complete the Wizard.{color}
# {color:#333333}Double-click the chain.cer again and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}
# {color:#333333}Double click the youdomain.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}PKCS#7 (p7b)*{color}{color:#333333}&nbsp;{color}{color:#333333}option, also select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Include all certificates in the certification path{*}{color}{color:#333333}, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b{*}{color}{color:#333333}{*}The following certificate installations must be executed in the stated order.*{color}\\ {color:#333333}1. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}and{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}files using:{color}{color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias root - file root_der.cer{*}{color}\\ {color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias chain - file chain_der.cer{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}2. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b file{*}{color}{color:#333333}&nbsp;{color}{color:#333333}using:{color}{color:#333333}{*}keytool \-import \-trustcacerts \-keystore my.kdb \-alias tomcat \-file yourdomain.p7b{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}&nbsp;{color}\\ {color:#333333}{*}Update server.xml configuration{color} {color:#333333}[file:*]{color}\\ {color:#333333}1. Open "$JAKARTA_HOME/conf/server.xml" in a text editor.{color}\\ {color:#333333}2. Find the following section:{color}\\ {color:#333333}<Connector{color}{color:#333333}&nbsp;{color}\\ {color:#333333}...{color}{color:#333333}&nbsp;{color}\\ {color:#333333}scheme="https"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}secure="true"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystoreFile="/pathto/my.kdb"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystorePass="mypassword"{color}\\ {color:#333333}3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.{color}\\ {color:#333333}4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.{color}\\ {color:#333333}5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows){color} | |</property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-04-15 14:46:43.000
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">11927677</id>
<property name="hibernateVersion">2</property>
<property name="title">Managing Certificates on Tomcat</property>
<property name="lowerTitle">managing certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">11960441</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-04-15 14:46:43.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681401
Fecha creación: 2009-02-27 08:24:05.000
<property name="body">Command to remove iptables from Red Hat linux boxes:
\\
&nbsp;rpm \-e iptables iptables-ipv6 iptstate system-config-securitylevel system-config-securitylevel-tui firstboot system-config-keyboard firstboot-tui </property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-02-27 08:24:05.000
originalVersion: 11239454
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681401</id>
<property name="hibernateVersion">1</property>
<property name="title">Remove linux firewall</property>
<property name="lowerTitle">remove linux firewall</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714160</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-02-27 08:24:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-02-27 08:24:05.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239454</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681449
Fecha creación: 2009-01-14 11:29:48.000
<property name="body">First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as. The example given here is from our xmlbill server.
h5. Step 1: To make Tomcat start automatically, you must create a file in /etc/init.d called tomcat. Populate the file with the following:
{code}
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
# See how we were called.
case $1 in
start)
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/startup.sh"
;;
stop)
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/shutdown.sh"
;;
restart)
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/shutdown.sh"
su - billservice -c "sh /home/billservice/apache-tomcat-6.0.18/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
{code}
A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).
h5. Set to start automatically
Run the following commands as root:
{code}
#chmod 755 /etc/init.d/tomcat
#update-rc.d tomcat defaults
{code}
That's it; reboot to verify that everything starts the way you expect.</property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-01-14 11:46:02.000
originalVersion: 10223743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681449</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714208</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-01-14 11:46:02.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681451
Fecha creación: 2009-06-19 09:04:03.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>A place to collect Tomcat documentation.</p></ac:rich-text-body></ac:macro>
<h2>Tomcat Documentation</h2>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>The following list is a collection of Tomcat documentation from all over our wiki. Anything with the label &quot;tomcat&quot; will show up in this list.</p></ac:rich-text-body></ac:macro>
<ac:structured-macro ac:name="contentbylabel" ac:schema-version="3" ac:macro-id="a3fd06db-7e68-401b-932d-bc3d2a0d6a39"><ac:parameter ac:name="labels">tomcat</ac:parameter><ac:parameter ac:name="cql">label = &quot;tomcat&quot;</ac:parameter></ac:structured-macro></property>
hibernateVersion: 5
version: 5
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2009-06-19 09:04:07.000
versionComment: Migration of unmigrated content due to installation of a new plugin
contentStatus: current
space: 3014657
parent: 2883631
Colección: historicalVersions
Colección: children
Colección: ancestors
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681451</id>
<property name="hibernateVersion">5</property>
<property name="title">Tomcat</property>
<property name="lowerTitle">tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714210</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2009-06-19 09:04:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2009-06-19 09:04:07.000</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585302</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182943</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669157</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">117407945</id>
</element>
</collection>
<property name="contentStatus">current</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
<property name="parent" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883631</id>
</property>
<collection name="children" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068747</id>
</element>
</collection>
<collection name="ancestors" class="java.util.List">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883631</id>
</element>
</collection>
</object>
ID: 12681525
Fecha creación: 2009-07-01 15:18:23.000
<property name="body"><p>From Dave Iler:</p>
<p>This document tells how to switch from sendmail to postfix under Redhat AS 4.<br />
The info was found with google &amp; applied to ginkgo.&nbsp; It worked.<br />
1)&nbsp; service sendmail stop<br />
2)&nbsp;&nbsp;&nbsp; chkconfig sendmail off<br />
3)&nbsp;&nbsp;&nbsp; alternatives --display mta<br />
4)&nbsp;&nbsp;&nbsp; alternatives --config mta<br />
At this point the alteratives program will offer you a menu of choices for<br />
the mta.&nbsp; The default will have a <ac:emoticon ac:name="plus" /> plus sign by it.&nbsp; Often, sendmail is<br />
the first choice and has a <ac:emoticon ac:name="plus" /> by it; and postfix is listed second.<br />
Press the number that refers to postfix &amp; hit the &lt;enter&gt; key.<br />
5)&nbsp;&nbsp;&nbsp; chkconfig postfix on<br />
6)&nbsp;&nbsp;&nbsp; service postfix start<br />
At this point you should be able to enter the next command and see something<br />
like this:<br />
[root@ginkgo ~]# alternatives --display mta<br />
mta - status is manual.<br />
&nbsp;link currently points to /usr/sbin/sendmail.postfix<br />
/usr/sbin/sendmail.sendmail - priority 90<br />
&nbsp;slave mta-pam: /etc/pam.d/smtp.sendmail<br />
&nbsp;slave mta-mailq: /usr/bin/mailq.sendmail<br />
&nbsp;slave mta-newaliases: /usr/bin/newaliases.sendmail<br />
&nbsp;slave mta-rmail: /usr/bin/rmail.sendmail<br />
&nbsp;slave mta-sendmail: /usr/lib/sendmail.sendmail<br />
&nbsp;slave mta-mailqman: /usr/share/man/man1/mailq.sendmail.1.gz<br />
&nbsp;slave mta-newaliasesman: /usr/share/man/man1/newaliases.sendmail.1.gz<br />
&nbsp;slave mta-aliasesman: /usr/share/man/man5/aliases.sendmail.5.gz<br />
&nbsp;slave mta-sendmailman: /usr/share/man/man8/sendmail.sendmail.8.gz<br />
/usr/sbin/sendmail.postfix - priority 30<br />
&nbsp;slave mta-pam: /etc/pam.d/smtp.postfix<br />
&nbsp;slave mta-mailq: /usr/bin/mailq.postfix<br />
&nbsp;slave mta-newaliases: /usr/bin/newaliases.postfix<br />
&nbsp;slave mta-rmail: /usr/bin/rmail.postfix<br />
&nbsp;slave mta-sendmail: /usr/lib/sendmail.postfix<br />
&nbsp;slave mta-mailqman: /usr/share/man/man1/mailq.postfix.1.gz<br />
&nbsp;slave mta-newaliasesman: /usr/share/man/man1/newaliases.postfix.1.gz<br />
&nbsp;slave mta-aliasesman: /usr/share/man/man5/aliases.postfix.5.gz<br />
&nbsp;slave mta-sendmailman: /usr/share/man/man1/sendmail.postfix.1.gz<br />
Current `best' version is /usr/sbin/sendmail.sendmail.<br />
Sendmail can now be removed, if desired.</p></property>
hibernateVersion: 3
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-01 15:18:24.000
versionComment: Migrated to Confluence 4.0
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681525</id>
<property name="hibernateVersion">3</property>
<property name="title">Switch from Sendmail to Postfix in Red Hat 4</property>
<property name="lowerTitle">switch from sendmail to postfix in red hat 4</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714279</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">12747646</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454110</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-07-01 15:18:23.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-01 15:18:24.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182961</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 12681527
Fecha creación: 2009-07-01 16:52:46.000
<property name="body"><ac:structured-macro ac:macro-id="46a525b0-4b06-47b6-8d83-7d04a3f50995" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 1.0 (buildd@palmer) Sun Feb 1 20:21:04 UTC 2009
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "ServerFlags"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "DELL 2407WFP"
HorizSync 30.0 - 83.0
VertRefresh 56.0 - 60.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 9800 GT"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "1"
Option "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-1: 1920x1200_60 +1920+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 5
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 13:46:31.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681527</id>
<property name="hibernateVersion">5</property>
<property name="title">Xorg configuration file for nVidia 9800GT Ubuntu 9.04 Jaunty</property>
<property name="lowerTitle">xorg configuration file for nvidia 9800gt ubuntu 9.04 jaunty</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714281</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454147</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-07-01 16:52:46.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 13:46:31.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681555</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585337</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182962</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 12681529
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Notes
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.
$ sudo apt-get install alien
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
Remember to automate startup via a script in the /etc/init.d directory</property>
hibernateVersion: 1
version: 15
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-03-16 16:57:04.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681529</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714283</id>
</element>
</collection>
<property name="version">15</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-03-16 16:57:04.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681533
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Notes
This section added for Ubuntu:For those of you who have seen this before, I've corrected a couple of
errors in it.
I recently built up a linux box using Ubuntu and discovered that it's
not hard to set it up to use the TSM backup client. Assuming you have
a passing familiarity with setting up TSM on RPM-based distributions,
here are the basic steps:
1. Install the "alien" package which lets you (among other things)
install RPM packages on Ubuntu or other Debian-based distros.&nbsp; For 64-bit, you'll also need the ia32-libs package set.
$ sudo apt-get install alien
$ sudo apt-get install ia32-libs (for 64-bit only)
2. download the TSM client software from IBM using your web browser.
3. untar the TSM RPMs...
4. Use alien to install the appropriate RPMs.
$ sudo alien \-i \--scripts TIVsm-API.i386.rpm TIVsm-BA.i386.rpm
5. Set up the normal TSM configuration (dsm.opt, dsm.sys, inclexcl.dsm).
6. Run a manual backup.
$ sudo dsmc incremental
Remember to automate startup via a script in the /etc/init.d directory</property>
hibernateVersion: 1
version: 16
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 09:18:06.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681533</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714288</id>
</element>
</collection>
<property name="version">16</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 09:18:06.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681535
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
Installing TSM Client V5.5.1 on Ubuntu 9.04/amd64
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the RPMs
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v551/5.5.1.0-TIV-TSMBAC-LinuxX86.tar"
2) additional software that may be required (not sure if this is really required, but it works when these are installed)
apt-get install ksh libstdc++5
3) unpack the archive
tar xvf 5.5.1.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien \-g TIVsm-API.i386.rpm
alien \-g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.1/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.1/DEBIAN
6) edit the control files
vim TIVsm-API-5.5.1/DEBIAN/control
\-\- remove blank line after "Maintainer:" line
\-\- in "Architecture:" line change "i386" to "amd64"
\-\- delete "${shlibs:Depends}" in "Depends:" line
\-\- joing two "Description:" lines into one line
\-\- insert line "Version: 5.5.1"
\-\- delete last two lines " ." and " (Converted..."
\-\- append an empty line as last line
\|Source: tivsm-api
\|Section: alien
\|Priority: extra
\|Maintainer: who are you
\|Package: tivsm-api
\|Architecture: amd64
\|Depends:
\|Description: the API IBM Tivoli Storage Manager API
\|Version: 5.5.1
\|
\-\- save and exit
vim TIVsm-BA-5.5.1/DEBIAN/control
\-\- remove blank line after "Maintainer:" line
\-\- in "Architecture:" line change "i386" to "amd64"
\-\- delete "${shlibs:Depends}" in "Depends:" line
\-\- joing two "Description:" lines into one line
\-\- insert line "Version: 5.5.1"
\-\- delete last two lines " ." and " (Converted..."
\-\- append an empty line as last line
\|Source: tivsm-ba
\|Section: alien
\|Priority: extra
\|Maintainer: who are you
\|Package: tivsm-ba
\|Architecture: amd64
\|Depends:
\|Description: the Backup Archive Client IBM Tivoli Storage Manager Client
\|Version: 5.5.1
\|
\-\- save and exit
7) create \*.deb packages
dpkg \-b TIVsm-API-5.5.1
dpkg \-b TIVsm-BA-5.5.1
8) install \*.deb packages
dpkg \-i TIVsm-API-5.5.1.deb
dpkg \-i TIVsm-BA-5.5.1.deb
9) create/modify TSM configuration files
vim /opt/tivoli/tsm/client/ba/bin/dsm.opt
\| ServerName TSMServer
\| Domain ALL-LOCAL
\| DateFormat 3
\-\- save and exit
vim /opt/tivoli/tsm/client/ba/bin/dsm.sys
\| ServerName TSMServer
\| CommMethod TCPip
\| TcpPort 1500
\| TcpServerAddress tsmserver.your.domain.com
\| NodeName registered-name-for-this-system
\| PasswordAccess generate
\| Compression On
\| ErrorLogName /var/log/dsmerror.log
\| ErrorLogRetention 5 D
\| SchedLogName /var/log/dsmsched.log
\| SchedLogRetention 5 D
\|\* InclExcl /opt/tivoli/tsm/client/ba/bin/dsm.inclexcl
\-\- set the TcpServerAddress to the fully qualified name of the TSM Server
\-\- set the NodeName to the node name as registered with the TSM Server
\-\- save and exit
10) run an incremental backup
dsmc incremental
11) create upstart script
vim /etc/event.d/dsm-sched
\# dsm-sched
\# This service starts the Tivoli Storage Manager "dsmc sched" backup process
\# and respawns it as the scheduled backup happens or the dsmc process gets
\# killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >>/tmp/dsm-sched.log 2>&1
\# end of dsm-sched
\-\- save and exit
12) start the TSM scheduler
start dsm-sched
13) verify the scheduler picked up its schedule
tail /var/log/dsmsched.log
14) you are done...
Regards,
Werner</property>
hibernateVersion: 1
version: 17
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 11:02:55.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681535</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714290</id>
</element>
</collection>
<property name="version">17</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 11:02:55.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681536
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.1 on Ubuntu 9.04/amd64
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the RPMs
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v551/5.5.1.0-TIV-TSMBAC-LinuxX86.tar"
2) additional software that may be required (not sure if this is really required, but it works when these are installed)
apt-get install ksh libstdc++5
3) unpack the archive
tar xvf 5.5.1.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien \-g TIVsm-API.i386.rpm
alien \-g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.1/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.1/DEBIAN
6) edit the control files
vim TIVsm-API-5.5.1/DEBIAN/control
\-\- remove blank line after "Maintainer:" line
\-\- in "Architecture:" line change "i386" to "amd64"
\-\- delete "${shlibs:Depends}" in "Depends:" line
\-\- joing two "Description:" lines into one line
\-\- insert line "Version: 5.5.1"
\-\- delete last two lines " ." and " (Converted..."
\-\- append an empty line as last line
\|Source: tivsm-api
\|Section: alien
\|Priority: extra
\|Maintainer: who are you
\|Package: tivsm-api
\|Architecture: amd64
\|Depends:
\|Description: the API IBM Tivoli Storage Manager API
\|Version: 5.5.1
\|
\-\- save and exit
vim TIVsm-BA-5.5.1/DEBIAN/control
\-\- remove blank line after "Maintainer:" line
\-\- in "Architecture:" line change "i386" to "amd64"
\-\- delete "${shlibs:Depends}" in "Depends:" line
\-\- joing two "Description:" lines into one line
\-\- insert line "Version: 5.5.1"
\-\- delete last two lines " ." and " (Converted..."
\-\- append an empty line as last line
\|Source: tivsm-ba
\|Section: alien
\|Priority: extra
\|Maintainer: who are you
\|Package: tivsm-ba
\|Architecture: amd64
\|Depends:
\|Description: the Backup Archive Client IBM Tivoli Storage Manager Client
\|Version: 5.5.1
\|
\-\- save and exit
7) create \*.deb packages
dpkg \-b TIVsm-API-5.5.1
dpkg \-b TIVsm-BA-5.5.1
8) install \*.deb packages
dpkg \-i TIVsm-API-5.5.1.deb
dpkg \-i TIVsm-BA-5.5.1.deb
9) create/modify TSM configuration files
vim /opt/tivoli/tsm/client/ba/bin/dsm.opt
\| ServerName TSMServer
\| Domain ALL-LOCAL
\| DateFormat 3
\-\- save and exit
vim /opt/tivoli/tsm/client/ba/bin/dsm.sys
\| ServerName TSMServer
\| CommMethod TCPip
\| TcpPort 1500
\| TcpServerAddress tsmserver.your.domain.com
\| NodeName registered-name-for-this-system
\| PasswordAccess generate
\| Compression On
\| ErrorLogName /var/log/dsmerror.log
\| ErrorLogRetention 5 D
\| SchedLogName /var/log/dsmsched.log
\| SchedLogRetention 5 D
\|\* InclExcl /opt/tivoli/tsm/client/ba/bin/dsm.inclexcl
\-\- set the TcpServerAddress to the fully qualified name of the TSM Server
\-\- set the NodeName to the node name as registered with the TSM Server
\-\- save and exit
10) run an incremental backup
dsmc incremental
11) create upstart script
vim /etc/event.d/dsm-sched
\# dsm-sched
\# This service starts the Tivoli Storage Manager "dsmc sched" backup process
\# and respawns it as the scheduled backup happens or the dsmc process gets
\# killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >>/tmp/dsm-sched.log 2>&1
\# end of dsm-sched
\-\- save and exit
12) start the TSM scheduler
start dsm-sched
13) verify the scheduler picked up its schedule
tail /var/log/dsmsched.log
14) you are done...
Regards,
Werner
{code}</property>
hibernateVersion: 1
version: 18
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 11:05:58.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681536</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714291</id>
</element>
</collection>
<property name="version">18</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 11:05:58.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681542
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.1 on Ubuntu 9.04/amd64
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the RPMs
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v551/5.5.1.0-TIV-TSMBAC-LinuxX86.tar"
2) additional software that may be required (not sure if this is really required, but it works when these are installed)
apt-get install ksh libstdc++5
3) unpack the archive
tar xvf 5.5.1.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.1/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.1/DEBIAN
6) edit the control files
vim TIVsm-API-5.5.1/DEBIAN/control
-- remove blank line after "Maintainer:" line
-- in "Architecture:" line change "i386" to "amd64"
-- delete "${shlibs:Depends}" in "Depends:" line
-- joing two "Description:" lines into one line
-- insert line "Version: 5.5.1"
-- delete last two lines " ." and " (Converted..."
-- append an empty line as last line
|Source: tivsm-api
|Section: alien
|Priority: extra
|Maintainer: who are you
|Package: tivsm-api
|Architecture: amd64
|Depends:
|Description: the API IBM Tivoli Storage Manager API
|Version: 5.5.1
|
-- save and exit
vim TIVsm-BA-5.5.1/DEBIAN/control
-- remove blank line after "Maintainer:" line
-- in "Architecture:" line change "i386" to "amd64"
-- delete "${shlibs:Depends}" in "Depends:" line
-- joing two "Description:" lines into one line
-- insert line "Version: 5.5.1"
-- delete last two lines " ." and " (Converted..."
-- append an empty line as last line
|Source: tivsm-ba
|Section: alien
|Priority: extra
|Maintainer: who are you
|Package: tivsm-ba
|Architecture: amd64
|Depends:
|Description: the Backup Archive Client IBM Tivoli Storage Manager Client
|Version: 5.5.1
|
-- save and exit
7) create *.deb packages
dpkg -b TIVsm-API-5.5.1
dpkg -b TIVsm-BA-5.5.1
8) install *.deb packages
dpkg -i TIVsm-API-5.5.1.deb
dpkg -i TIVsm-BA-5.5.1.deb
9) create/modify TSM configuration files
vim /opt/tivoli/tsm/client/ba/bin/dsm.opt
| ServerName TSMServer
| Domain ALL-LOCAL
| DateFormat 3
-- save and exit
vim /opt/tivoli/tsm/client/ba/bin/dsm.sys
| ServerName TSMServer
| CommMethod TCPip
| TcpPort 1500
| TcpServerAddress tsmserver.your.domain.com
| NodeName registered-name-for-this-system
| PasswordAccess generate
| Compression On
| ErrorLogName /var/log/dsmerror.log
| ErrorLogRetention 5 D
| SchedLogName /var/log/dsmsched.log
| SchedLogRetention 5 D
|* InclExcl /opt/tivoli/tsm/client/ba/bin/dsm.inclexcl
-- set the TcpServerAddress to the fully qualified name of the TSM Server
-- set the NodeName to the node name as registered with the TSM Server
-- save and exit
10) run an incremental backup
dsmc incremental
11) create upstart script
vim /etc/event.d/dsm-sched
# dsm-sched
# This service starts the Tivoli Storage Manager "dsmc sched" backup process
# and respawns it as the scheduled backup happens or the dsmc process gets
# killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >>/tmp/dsm-sched.log 2>&1
# end of dsm-sched
-- save and exit
12) start the TSM scheduler
start dsm-sched
13) verify the scheduler picked up its schedule
tail /var/log/dsmsched.log
14) you are done...
Regards,
Werner
{code}</property>
hibernateVersion: 1
version: 19
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 11:06:56.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681542</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714297</id>
</element>
</collection>
<property name="version">19</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 11:06:56.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681546
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
2) apt-get install alien ksh libstdc++5 ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the ldconfig fix located above; run the language fix as well
11) run an incremental backup
dsmc incremental
12) create upstart script
vim /etc/event.d/dsm-sched
# dsm-sched
# This service starts the Tivoli Storage Manager "dsmc sched" backup process
# and respawns it as the scheduled backup happens or the dsmc process gets
# killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >>/tmp/dsm-sched.log 2>&1
# end of dsm-sched
-- save and exit
13) start the TSM scheduler
start dsm-sched
{code}</property>
hibernateVersion: 1
version: 20
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 11:27:13.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681546</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714301</id>
</element>
</collection>
<property name="version">20</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 11:27:13.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681555
Fecha creación: 2009-07-01 16:52:46.000
<property name="body">{code}
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 1.0 (buildd@palmer) Sun Feb 1 20:21:04 UTC 2009
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "ServerFlags"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "DELL 2407WFP"
HorizSync 30.0 - 83.0
VertRefresh 56.0 - 76.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 9800 GT"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "1"
Option "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-1: nvidia-auto-select +1920+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-01 16:52:46.000
originalVersion: 12681527
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681555</id>
<property name="hibernateVersion">1</property>
<property name="title">Xorg configuration file for nVidia 9800GT Ubuntu 9.04 Jaunty</property>
<property name="lowerTitle">xorg configuration file for nvidia 9800gt ubuntu 9.04 jaunty</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714310</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-07-01 16:52:46.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-01 16:52:46.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681527</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681557
Fecha creación: 2009-01-14 11:29:48.000
<property name="body">First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as. The example given here is from our xmlbill server.
h5. Step 1: To make Tomcat start automatically, you must create a file in /etc/init.d called tomcat. Populate the file with the following:
{code}
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=/home/billservice/apps/apache-tomcat-6.0.18
# See how we were called.
case $1 in
start)
su - billservice -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - billservice -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - billservice -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - billservice -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
{code}
A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).
h5. Set to start automatically
Run the following commands as root:
{code}
#chmod 755 /etc/init.d/tomcat
#update-rc.d tomcat defaults
{code}
That's it; reboot to verify that everything starts the way you expect.</property>
hibernateVersion: 1
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2009-06-19 09:04:31.000
originalVersion: 10223743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681557</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714312</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2009-06-19 09:04:31.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 12681559
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
2) apt-get install alien ksh libstdc++5 ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
11) run an incremental backup
dsmc incremental
12) create upstart script
vim /etc/event.d/dsm-sched
# dsm-sched
# This service starts the Tivoli Storage Manager "dsmc sched" backup process
# and respawns it as the scheduled backup happens or the dsmc process gets
# killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >>/tmp/dsm-sched.log 2>&1
# end of dsm-sched
-- save and exit
13) start the TSM scheduler
start dsm-sched
{code}</property>
hibernateVersion: 1
version: 21
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 11:29:15.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681559</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">12714314</id>
</element>
</collection>
<property name="version">21</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 11:29:15.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 13107203
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
2) apt-get install alien ksh libstdc++5 ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
11) run an incremental backup
dsmc incremental
12) create upstart script
vim /etc/event.d/dsm-sched
# dsm-sched
# This service starts the Tivoli Storage Manager "dsmc sched" backup process
# and respawns it as the scheduled backup happens or the dsmc process gets
# killed or dies.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /usr/bin/dsmc sched >>/tmp/dsm-sched.log 2>&1
# end of dsm-sched
-- save and exit
13) start the TSM scheduler
start dsm-sched
{code}</property>
hibernateVersion: 3
version: 22
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-06 08:00:04.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">13107203</id>
<property name="hibernateVersion">3</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">13172738</id>
</element>
</collection>
<property name="version">22</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-06 08:00:04.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 13336680
Fecha creación: 2008-03-06 15:37:40.000
<property name="body">h2. First Step
h5. If IP is assigned by DHCP, make sure /etc/hosts file looks like this:
{code:title=/etc/hosts|borderStyle=solid}
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername
{code}
h5. If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):
{code:title=/etc/hosts|borderStyle=solid}
127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
{code}
h2. Second Step
h5. If you need the change to happen immediately without a reboot, run the following command as root:
{code:borderStyle=solid}
#hostname yourserver.suu.edu
{code}
h2. Third Step
h5. This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:
{code:borderStyle=solid}
yourserver.suu.edu
{code}
h2. Fourth Step
h5. Edit the /etc/sysconfig/network file HOSTNAME line to read:
{code:title=/etc/sysconfig/network|borderStyle=solid}
HOSTNAME=yourserver.suu.edu
{code}
h2. Fifth Step
h5. As root, run the following command:
{code:borderStyle=solid}
#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
{code}
h2. Finally, reboot.
</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-06 15:53:14.000
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">13336680</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change hostname</property>
<property name="lowerTitle">how to properly change hostname</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">13369443</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-06 15:53:14.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 13795381
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol><li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM &nbsp;(add it to a NEW controller, i.e. scsi 1:0, 2:0, 3:0 and it will detect it without a reboot)</li><li>Find the identifier of the new disk by running 'dmesg |grep sd' at the command line. &nbsp;The newest one should be the last one in the list (i.e. sdb, sdc, etc.); use fdisk to create new partition on the disk.</li><li>Extend existing volume group onto new partition.</li><li>Extend existing logical volume onto new space.</li><li>Extend filesystem.</li></ol><p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p><ol><li>fdisk /dev/sdc</li><li>n</li><li>p</li><li>1 &lt;Enter&gt; &lt;Enter&gt; &nbsp;(twice)</li><li>t</li><li>8e</li><li>w</li><li>pvcreate /dev/sdc1</li><li>vgdisplay (to get volgroupname)</li><li>vgextend &lt;volgroupname&gt; /dev/sdc1</li><li>lvdisplay (to get name of logical volume you want to extend)</li><li>lvextend -L +10G /dev/mapper/&lt;lvname&gt; &nbsp;/dev/sdc1 &nbsp;(this will extend the volume by 10 gigabytes. &nbsp;If you want to use the whole disk, just take out the -L +10G part)</li><li>resize2fs /dev/mapper/&lt;lvname&gt;</li></ol><p>Done - verify new size</p><p>&nbsp;</p><p>&nbsp;</p><p>COMMAND-LINE OPTIONS:</p><p>fdisk /dev/xvdf</p><p>pvcreate /dev/xvdf1</p><p>vgcreate mvg /dev/xvdf1<br />lvcreate -L 8192M -n tmpvol mvg<br />lvcreate -L 8192M -n swapvol mvg<br />lvcreate -L 2048M -n homevol mvg<br />lvcreate -L 5G -n varvol mvg<br />pvdisplay (to get free PE)<br />lvcreate -l &lt;freePEval&gt; -n u01vol mvg<br />mkfs.ext4 /dev/mapper/mvg-u01vol</p></property>
hibernateVersion: 8
version: 11
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-05-11 10:11:17.992
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
<property name="hibernateVersion">8</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">13828148</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">41877566</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454043</id>
</element>
</collection>
<property name="version">11</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-05-11 10:11:17.992</property>
<property name="versionComment" />
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">41812005</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">41812007</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31391868</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795383</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">39157786</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">39157785</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">39157783</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">34832415</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182997</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">39157784</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 13795383
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"># Physically put the disk in the server&nbsp; or create a new virtual disk for the VM
# Use fdisk to create new partition on the disk.
# Extend existing volume group onto new partition.
# Extend existing logical volume onto new space.
# Extend filesystem.
I'll go into more detail how to do each of these steps on SLES and RHEL. For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named rootvg and a logical volume on that volume group named homelv. Also in this example, /dev/rootvg/homelv is mounted on our Linux system as /home. Let's get started.
# Physically put the disk in the server and make it available either in an array or some other way.
#* This can vary widely depending on what hardware you are on, so we will not cover this portion in this tutorial. You may want to use [Google|http://www.google.com/] to search for how to do this on your hardware.
# Use fdisk to create new partition on the disk.
#* As root run fdisk on the new disk. For example you would run fdisk /dev/sdc.
#* On this new disk you will create a new partition. Inside of the fdisk program you create a new partition by typing the letter "n" followed by the enter key.
#* It will then ask you if you want it to be a primary partition or an extended partition. For this example we will just assume we want it to be a primary partition. To do this we type the letter "p" followed by the enter key.
#* Next it will ask for the starting point and ending point of this partition. For this example, we will simply select the defaults by hitting the enter key twice.
#* If you want to view the details of the new partition, you can type the letter "p" from the fdisk prompt.
#* Next we need to change the type for this new partition. We do this by typing the letter "t" followed by the enter key.
#* It asks to enter in what type we want it to be. We need it to be of the Linux LVM type. The Hex code for Linux LVM is 8e. We type in "8e" followed by the enter key and it will tell us that it changed the system type for this partition to Linux LVM.
#* We then need to save these changes and exit fdisk. We do this by typing the letter "w" (for write) followed by the enter key.
# Use pvcreate to lay down the "setup" on the physical partition.
#* This sets up physical extents and other things that LVM needs. The command we run is "pvcreate /dev/sdc1"
# Extend existing volume group onto new partition.
#* For this example we are going to assume that we have an existing volume group named rootvg. We can display information about this volume group using the vgdisplay command. If we type "vgdisplay" without any arguments, it will display all the volume groups. If we just want information about the "rootvg" volume group, we would type "vgdisplay rootvg".
#* To extend the rootvg volume group onto the new partition, we use the vgextend command. Type "vgextend rootvg /dev/sdc1" followed by the enter key. This will extend the rootvg volume group onto the new partition, /dev/sdc1.
# Extend existing logical volume onto new space.
#* For this example we are going to assume that we have an existing logical volume on the rootvg volume group that is named homelv. The full path to this logical volume would be "/dev/rootvg/homelv". We can view information about this logical volume by typing "lvdisplay /dev/rootvg/homelv".
#* To extend this existing logical volume onto the new space we use the lvextend command. Type "lvextend \-L \+20G /dev/rootvg/homelv /dev/sdc1". This command says that we want to increase the /dev/rootvg/homelv logical volume by 20GB. This is only possible if /dev/sdc1 is a member of volume group rootvg and there is enough free disk space on it.
# The last thing we need to do is increase the filesystem.
#* Which command we use to increase the filesystem depends on what filesystem type we are currently using. If we are using reiserfs, we will use the "resize_reiserfs" command. If we are using ext3, we will use either the "ext2online" or the "resize2fs" command. On RHEL 5, we can use the "resize2fs" command, which will recognize that the filesystem is currently mounted and perform an "on-line" resize.
#* On both resize_reiserfs and ext2online, the size is optional. If we want the filesystem to take up all the available space on our logical volume, we don't need to put the size. To extend the filesystem type either "ext2online /dev/rootvg/homelv" or "resize2fs /dev/rootvg/homelv".</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-03 11:13:33.000
originalVersion: 13795381
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795383</id>
<property name="hibernateVersion">1</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">13828150</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-03 11:13:33.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 14024730
Fecha creación: 2009-08-17 12:59:27.000
<property name="body"><p>Since the Ecommerce subnet is very locked down, we have to take a couple of extra steps to enable hosts to talk to each other even though they are in the same subnet.</p>
<p>For Ubuntu Server:</p>
<p>edit the /etc/rc.local file, and put the following lines just before the last line:</p>
<p>For the host you want to connect TO:</p>
<p>exec arp -s &lt;ipaddress&gt;&lt;space&gt;&lt;macaddress&gt;</p>
<p>For the host you are ON: (optional; I like this for documentation purposes)</p>
<p>exec arp -s &lt;ipaddress&lt;space&gt;&lt;macaddress&gt;</p>
<p>Save the file, and then make sure it is flagged executable.</p>
<p>That's it - on next reboot, you should be able to communicate with the remote box.</p></property>
hibernateVersion: 4
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-19 11:45:24.000
versionComment: Migrated to Confluence 4.0
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024730</id>
<property name="hibernateVersion">4</property>
<property name="title">Using the ARP command to permit inter-host communication in the Ecommerce Subnet</property>
<property name="lowerTitle">using the arp command to permit inter-host communication in the ecommerce subnet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">14057498</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454116</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-17 12:59:27.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-19 11:45:24.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024737</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26183001</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 14024732
Fecha creación: 2008-04-14 09:09:26.000
<property name="body">{code}
The key to creating self-signing certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
{code}
On the ipsca website:
{color:#333333}&nbsp;{color}{color:#333333}&nbsp;{color}
| {color:#2c63ca}&nbsp;Certificate installation{color} | \\ |
{color:#333333}Installing your Certificate with Jakarta-Tomcat.{color}
{color:#333333}(For Linux & Windows){color}{color:#333333}&nbsp;{color}
| {color:#333333}This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.{color} || {color:#333333}{*}Creating a Certificate Signing Request{*}{color}\\ |
| {color:#333333}Follow these instructions to generate a CSR for your Web site. When you have completed this process, you will have a CSR ready to submit to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}in order to be generated into a SSL Security Certificate.{color}\\ {color:#333333}If you are not using JDK 1.4 or higher, you must download and install "Java Secure Socket Extensions" JSSE.{color}\\ {color:#333333}1. Generate a private key with the following command:{color}\\ {color:#333333}*$JAVA_HOME/bin/keytool \-genkey \-alias tomcat \-keyalg RSA \-keystore /path/to/domainname.kdb*{color}\\ {color:#333333}You will be prompted for a password. Tomcat uses a default password of "changeit". If you use a different password, you will need to specify a custom password in the server.xml configuration file.{color}\\ {color:#333333}In the next field you will be asked "What is your first and last name?" At this prompt, you must specify the common name (FQDN) of your web site.{color}\\ {color:#333333}You will then be prompted for your organizational unit, organization, etc.{color}\\ {color:#333333}.2. Generate the Certificate Signing Request (CSR){color}\\ {color:#333333}*$JAVA_HOME/bin/keytool \-certreq \-alias tomcat \-keystore /path/to/keystore.kdb \-file filename.csr*{color}\\ {color:#333333}You will not be prompted for the common name, organization, etc. The keytool will use the values that you specify when generating the private key.{color}\\ {color:#333333}3. Now go to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include \---\-{color}{color:#333333}{-}BEGIN NEW CERTIFICATE REQUEST{-}{color}{color:#333333}\-\-{color}{color:#333333}-\- and --{color}{color:#333333}\-\-{color}{color:#333333}{-}END NEW CERTIFICATE REQUEST{-}{color}{color:#333333}\----.{color}\\ {color:#333333}4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.{color}\\ | |
| {color:#333333}{*}Installing a Server Digital Certificate{*}{color}\\ |
| {color:#333333}{*}Upload a New SSL Certificate{*}{color}\\ {color:#333333}After you receive your certificate,{color}{color:#333333}&nbsp;{color}{color:#333333}{*}two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1{*}{color}{color:#333333}.{color}{color:#333333}&nbsp;{color}{color:#333333}{*}It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections{*}{color}{color:#333333}&nbsp;{color}{color:#333333}with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:{color}\\
IPSServidores.crt \\
IPSCACLASEA1.crt \\
IPS-IPSCABUNDLE.CRT \\ {color:#333333}You must first export the certificates in the following format:{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSCACLASEA1 Chained CA certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}chain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy your{color}{color:#333333}&nbsp;{color}{color:#333333}{_}web server certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}{_}yourdomain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSServidores root CA{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}{_}certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}root.cer{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Double-click the root.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}
# {color:#333333}Double-click the chain.cer and select Install. Choose "Place all certificates in following store" and select Intermediate Certification Authorities. Complete the Wizard.{color}
# {color:#333333}Double-click the chain.cer again and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}
# {color:#333333}Double click the youdomain.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}PKCS#7 (p7b)*{color}{color:#333333}&nbsp;{color}{color:#333333}option, also select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Include all certificates in the certification path{*}{color}{color:#333333}, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b{*}{color}{color:#333333}{*}The following certificate installations must be executed in the stated order.*{color}\\ {color:#333333}1. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}and{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}files using:{color}{color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias root - file root_der.cer{*}{color}\\ {color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias chain - file chain_der.cer*{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}2. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b file{*}{color}{color:#333333}&nbsp;{color}{color:#333333}using:{color}{color:#333333}{*}*keytool \-import \-trustcacerts \-keystore my.kdb \-alias tomcat \-file yourdomain.p7b*{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}&nbsp;{color}\\ {color:#333333}{*}Update server.xml configuration{color} {color:#333333}[file:*]{color}\\ {color:#333333}1. Open "$JAKARTA_HOME/conf/server.xml" in a text editor.{color}\\ {color:#333333}2. Find the following section:{color}\\ {color:#333333}<Connector{color}{color:#333333}&nbsp;{color}\\ {color:#333333}...{color}{color:#333333}&nbsp;{color}\\ {color:#333333}scheme="https"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}secure="true"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystoreFile="/pathto/my.kdb"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystorePass="mypassword"{color}\\ {color:#333333}3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.{color}\\ {color:#333333}4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.{color}\\ {color:#333333}5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows){color} | |</property>
hibernateVersion: 1
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-04-15 15:31:21.000
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024732</id>
<property name="hibernateVersion">1</property>
<property name="title">Managing Certificates on Tomcat</property>
<property name="lowerTitle">managing certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">14057499</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-04-15 15:31:21.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 14024735
Fecha creación: 2008-04-14 09:09:26.000
<property name="body">{code}The key to creating self-signed certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
{code}On the ipsca website:
{color:#333333}&nbsp;{color}{color:#333333}&nbsp;{color}
| {color:#2c63ca}&nbsp;Certificate installation{color} | \\ |
{color:#333333}Installing your Certificate with Jakarta-Tomcat.{color}
{color:#333333}(For Linux & Windows){color}{color:#333333}&nbsp;{color}
| {color:#333333}This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.{color} || {color:#333333}{*}Creating a Certificate Signing Request{*}{color}\\ |
| {color:#333333}Follow these instructions to generate a CSR for your Web site. When you have completed this process, you will have a CSR ready to submit to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}in order to be generated into a SSL Security Certificate.{color}\\ {color:#333333}If you are not using JDK 1.4 or higher, you must download and install "Java Secure Socket Extensions" JSSE.{color}\\ {color:#333333}1. Generate a private key with the following command:{color}\\ {color:#333333}*$JAVA_HOME/bin/keytool \-genkey \-alias tomcat \-keyalg RSA \-keystore /path/to/domainname.kdb{*}{color}\\ {color:#333333}You will be prompted for a password. Tomcat uses a default password of "changeit". If you use a different password, you will need to specify a custom password in the server.xml configuration file.{color}\\ {color:#333333}In the next field you will be asked "What is your first and last name?" At this prompt, you must specify the common name (FQDN) of your web site.{color}\\ {color:#333333}You will then be prompted for your organizational unit, organization, etc.{color}\\ {color:#333333}.2. Generate the Certificate Signing Request (CSR){color}\\ {color:#333333}*$JAVA_HOME/bin/keytool \-certreq \-alias tomcat \-keystore /path/to/keystore.kdb \-file filename.csr{*}{color}\\ {color:#333333}You will not be prompted for the common name, organization, etc. The keytool will use the values that you specify when generating the private key.{color}\\ {color:#333333}3. Now go to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include \---\-{color}{color:#333333}{-}BEGIN NEW CERTIFICATE REQUEST{-}{color}{color:#333333}\-\-{color}{color:#333333}\-\- and --{color}{color:#333333}\-\-{color}{color:#333333}{-}END NEW CERTIFICATE REQUEST{-}{color}{color:#333333}\----.{color}\\ {color:#333333}4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.{color}\\ | |
| {color:#333333}{*}Installing a Server Digital Certificate{*}{color}\\ |
| {color:#333333}{*}Upload a New SSL Certificate{*}{color}\\ {color:#333333}After you receive your certificate,{color}{color:#333333}&nbsp;{color}{color:#333333}{*}two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1{*}{color}{color:#333333}.{color}{color:#333333}&nbsp;{color}{color:#333333}{*}It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections{*}{color}{color:#333333}&nbsp;{color}{color:#333333}with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:{color}\\
IPSServidores.crt \\
IPSCACLASEA1.crt \\
IPS-IPSCABUNDLE.CRT \\ {color:#333333}You must first export the certificates in the following format:{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSCACLASEA1 Chained CA certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}chain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy your{color}{color:#333333}&nbsp;{color}{color:#333333}{_}web server certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}{_}yourdomain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSServidores root CA{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}{_}certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}root.cer{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Double-click the root.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}
# {color:#333333}Double-click the chain.cer and select Install. Choose "Place all certificates in following store" and select Intermediate Certification Authorities. Complete the Wizard.{color}
# {color:#333333}Double-click the chain.cer again and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}
# {color:#333333}Double click the youdomain.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}PKCS#7 (p7b)*{color}{color:#333333}&nbsp;{color}{color:#333333}option, also select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Include all certificates in the certification path{*}{color}{color:#333333}, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b{*}{color}{color:#333333}{*}The following certificate installations must be executed in the stated order.*{color}\\ {color:#333333}1. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}and{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}files using:{color}{color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias root - file root_der.cer{*}{color}\\ {color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias chain - file chain_der.cer{*}{color}{color:#333333}{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}2. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b file{*}{color}{color:#333333}&nbsp;{color}{color:#333333}using:{color}{color:#333333}{*}{color}{color:#333333}{*}keytool \-import \-trustcacerts \-keystore my.kdb \-alias tomcat \-file yourdomain.p7b{*}{color}{color:#333333}{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}&nbsp;{color}\\ {color:#333333}{*}Update server.xml configuration{color} {color:#333333}[file:\*|file:*]{color}\\ {color:#333333}1. Open "$JAKARTA_HOME/conf/server.xml" in a text editor.{color}\\ {color:#333333}2. Find the following section:{color}\\ {color:#333333}<Connector{color}{color:#333333}&nbsp;{color}\\ {color:#333333}...{color}{color:#333333}&nbsp;{color}\\ {color:#333333}scheme="https"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}secure="true"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystoreFile="/pathto/my.kdb"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystorePass="mypassword"{color}\\ {color:#333333}3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.{color}\\ {color:#333333}4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.{color}\\ {color:#333333}5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows){color} | |</property>
hibernateVersion: 1
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-19 11:32:41.000
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024735</id>
<property name="hibernateVersion">1</property>
<property name="title">Managing Certificates on Tomcat</property>
<property name="lowerTitle">managing certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">14057502</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-19 11:32:41.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 14024736
Fecha creación: 2008-04-14 09:09:26.000
<property name="body">{code}The key to creating self-signed certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
{code}{color:#333333}Installing your Certificate with Jakarta-Tomcat.{color}
{color:#333333}(For Linux & Windows){color}{color:#333333}&nbsp;{color}
| {color:#333333}This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.{color} || {color:#333333}{*}Creating a Certificate Signing Request{*}{color}\\ |
| {color:#333333}1. Generate a private key with the following command:{color}\\ {color:#333333}*$JAVA_HOME/bin/keytool \-genkey \-alias tomcat \-keyalg RSA \-validity 730 \-keystore /path/to/domainname.kdb{*}{color}\\ \\
{color:#333333}You will be prompted for a password. Tomcat uses a default password of "changeit" - do NOT use that. If you use a different password, you will need to specify a custom password in the server.xml configuration file.{color}\\ \\
{color:#333333}In the next field you will be asked "What is your first and last name?" At this prompt, you must specify the common name (FQDN) of your web site.{color}\\ {color:#333333}You will then be prompted for your organizational unit, organization, etc.{color}\\ \\
{color:#333333}2. Generate the Certificate Signing Request (CSR){color}\\ {color:#333333}*$JAVA_HOME/bin/keytool \-certreq \-alias tomcat \-keystore /path/to/keystore.kdb \-file servername.csr{*}{color}\\ \\ {color:#333333}3. Now go to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include BEGIN NEW CERTIFICATE REQUEST and END NEW CERTIFICATE REQUEST in your copied text.{color}\\
\\ {color:#333333}4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.{color}\\ | |
| {color:#333333}{*}Installing a Server Digital Certificate{*}{color}\\ |
| {color:#333333}{*}Upload a New SSL Certificate{*}{color}\\ {color:#333333}After you receive your certificate,{color}{color:#333333}&nbsp;{color}{color:#333333}{*}two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1{*}{color}{color:#333333}.{color}{color:#333333}&nbsp;{color}{color:#333333}{*}It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections{*}{color}{color:#333333}&nbsp;{color}{color:#333333}with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:{color}\\
IPSServidores.crt \\
IPSCACLASEA1.crt \\
IPS-IPSCABUNDLE.CRT \\ {color:#333333}You must first export the certificates in the following format:{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSCACLASEA1 Chained CA certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}chain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy your{color}{color:#333333}&nbsp;{color}{color:#333333}{_}web server certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}{_}yourdomain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSServidores root CA{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}{_}certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}root.cer{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Double-click the root.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}
# {color:#333333}Double-click the chain.cer and select Install. Choose "Place all certificates in following store" and select Intermediate Certification Authorities. Complete the Wizard.{color}
# {color:#333333}Double-click the chain.cer again and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}
# {color:#333333}Double click the youdomain.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}PKCS#7 (p7b)*{color}{color:#333333}&nbsp;{color}{color:#333333}option, also select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Include all certificates in the certification path{*}{color}{color:#333333}, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b{*}{color}{color:#333333}{*}The following certificate installations must be executed in the stated order.*{color}\\ {color:#333333}1. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}and{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}files using:{color}{color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias root - file root_der.cer{*}{color}\\ {color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias chain - file chain_der.cer{*}{color}{color:#333333}{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}2. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b file{*}{color}{color:#333333}&nbsp;{color}{color:#333333}using:{color}{color:#333333}{*}{color}{color:#333333}{*}keytool \-import \-trustcacerts \-keystore my.kdb \-alias tomcat \-file yourdomain.p7b{*}{color}{color:#333333}{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}&nbsp;{color}\\ {color:#333333}{*}Update server.xml configuration{color} {color:#333333}[file:\*|file:*]{color}\\ {color:#333333}1. Open "$JAKARTA_HOME/conf/server.xml" in a text editor.{color}\\ {color:#333333}2. Find the following section:{color}\\ {color:#333333}<Connector{color}{color:#333333}&nbsp;{color}\\ {color:#333333}...{color}{color:#333333}&nbsp;{color}\\ {color:#333333}scheme="https"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}secure="true"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystoreFile="/pathto/my.kdb"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystorePass="mypassword"{color}\\ {color:#333333}3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.{color}\\ {color:#333333}4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.{color}\\ {color:#333333}5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows){color} | |</property>
hibernateVersion: 1
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-19 11:37:10.000
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024736</id>
<property name="hibernateVersion">1</property>
<property name="title">Managing Certificates on Tomcat</property>
<property name="lowerTitle">managing certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">14057503</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-19 11:37:10.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 14024737
Fecha creación: 2009-08-17 12:59:27.000
<property name="body">Since the Ecommerce subnet is very locked down, we have to take a couple of extra steps to enable hosts to talk to each other even though they are in the same subnet.
For Ubuntu Server:
edit the /etc/rc.local file, and put the following lines at the bottom:
For the host you want to connect TO:
exec arp \-s <ipaddress><space><macaddress>
For the host you are ON: (optional; I like this for documentation purposes)
exec arp \-s <ipaddress<space><macaddress>
Save the file, and then make sure it is flagged executable.
That's it - on next reboot, you should be able to communicate with the remote box.</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-17 12:59:27.000
originalVersion: 14024730
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024737</id>
<property name="hibernateVersion">2</property>
<property name="title">Using the ARP command to permit inter-host communication in the Ecommerce Subnet</property>
<property name="lowerTitle">using the arp command to permit inter-host communication in the ecommerce subnet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">14057504</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-17 12:59:27.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-17 12:59:27.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024730</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 14712975
Fecha creación: 2009-02-27 08:24:05.000
<property name="body">Command to remove iptables from Red Hat linux boxes:
\\
&nbsp;rpm \-e iptables iptables-ipv6 iptstate system-config-securitylevel system-config-securitylevel-tui firstboot system-config-keyboard firstboot-tui system-config-boot</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-06-15 10:23:09.000
originalVersion: 11239454
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">14712975</id>
<property name="hibernateVersion">1</property>
<property name="title">Remove linux firewall</property>
<property name="lowerTitle">remove linux firewall</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">14745740</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-02-27 08:24:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-06-15 10:23:09.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239454</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 16252983
Fecha creación: 2008-03-06 15:37:40.000
<property name="body">h2. First Step
h5. If IP is assigned by DHCP, make sure /etc/hosts file looks like this:
{code:title=/etc/hosts|borderStyle=solid}127.0.0.1 servername.suu.edu localhost.localdomain localhost servername
{code}
h5. If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):
{code:title=/etc/hosts|borderStyle=solid}127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
{code}
h2. Second Step
h5. If you need the change to happen immediately without a reboot, run the following command as root:
{code:borderStyle=solid}#hostname yourserver.suu.edu
{code}
h2. Third Step
h5. This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:
{code:borderStyle=solid}yourserver.suu.edu
{code}
h2. Fourth Step
h5. Edit the /etc/sysconfig/network file HOSTNAME line to read:
{code:title=/etc/sysconfig/network|borderStyle=solid}HOSTNAME=yourserver.suu.edu
{code}
h2. Fifth Step
h5. As root, run the following command:
{code:borderStyle=solid}#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
{code}
h2. Sixth Step
h5. Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file
h2. Finally, reboot.</property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-24 14:16:36.000
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">16252983</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change hostname</property>
<property name="lowerTitle">how to properly change hostname</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">16285748</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-24 14:16:36.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 16253110
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh libstdc++5 ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
11) run an incremental backup
dsmc incremental
12) start the TSM scheduler
start dsm-sched
{code}</property>
hibernateVersion: 2
version: 23
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-09 08:23:50.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">16253110</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">16285873</id>
</element>
</collection>
<property name="version">23</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-09 08:23:50.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 16253111
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh libstdc++5 ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
11) Link the necessary libraries:
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.5.2.0.so
11) run an incremental backup
dsmc incremental
12) start the TSM scheduler
start dsm-sched
{code}</property>
hibernateVersion: 2
version: 24
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-12-28 12:45:29.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">16253111</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">16285874</id>
</element>
</collection>
<property name="version">24</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-12-28 12:45:29.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 16253113
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh libstdc++5 ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
11) Link the necessary libraries:
cd /usr/lib
ln -s /opt/tivoli/tsm/client/api/bin/libgpfs.so
ln -s /opt/tivoli/tsm/client/api/bin/libdmapi.so
ln -s /opt/tivoli/tsm/client/api/bin/libha_gs_r.so
ln -s /opt/tivoli/tsm/client/api/bin/libxerces-c1_6_0.so
ln -s /opt/tivoli/tsm/client/api/bin/libxmlutil-5.5.2.0.so
11) run an incremental backup
dsmc incremental
12) start the TSM scheduler
start dsm-sched
{code}</property>
hibernateVersion: 2
version: 25
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-12-28 12:45:55.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">16253113</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">16285876</id>
</element>
</collection>
<property name="version">25</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-12-28 12:45:55.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17137954
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh libstdc++5 ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
11) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
11) run an incremental backup
dsmc incremental
12) start the TSM scheduler
start dsm-sched
{code}</property>
hibernateVersion: 1
version: 26
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-12-28 16:13:40.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17137954</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17170710</id>
</element>
</collection>
<property name="version">26</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-12-28 16:13:40.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17138072
Fecha creación: 2010-03-22 08:10:10.000
<property name="body"><ac:structured-macro ac:macro-id="4a1e3248-714a-4683-b6ac-77694ed12762" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename MARKETPLACE
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-08 09:58:37.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138072</id>
<property name="hibernateVersion">2</property>
<property name="title">Example Tivoli dsm.sys file for Ubuntu Servers</property>
<property name="lowerTitle">example tivoli dsm.sys file for ubuntu servers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17170826</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-03-22 08:10:10.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-08 09:58:37.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584942</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805545</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138073</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182083</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 17138073
Fecha creación: 2010-03-22 08:10:10.000
<property name="body">{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename MARKETPLACE
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /usr/local/touchnet/.../*
include /home/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/etc
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
{code}</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-03-22 08:10:10.000
originalVersion: 17138072
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138073</id>
<property name="hibernateVersion">2</property>
<property name="title">Example Tivoli dsm.sys file for Ubuntu Servers</property>
<property name="lowerTitle">example tivoli dsm.sys file for ubuntu servers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17170827</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-03-22 08:10:10.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-03-22 08:10:10.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138072</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17138077
Fecha creación: 2010-03-22 09:31:53.000
<property name="body"><ac:structured-macro ac:macro-id="cdb5ad62-2db0-425d-b39c-0c8abeb0d22e" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename BIRCHINB
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /u02/.../*
include /u03/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-02-03 10:46:59.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138077</id>
<property name="hibernateVersion">2</property>
<property name="title">Example Tivoli dsm.sys file for Red Hat Servers</property>
<property name="lowerTitle">example tivoli dsm.sys file for red hat servers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17170830</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-03-22 09:31:53.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-02-03 10:46:59.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151287</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584944</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182087</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 17138078
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example contents of dsm.sys file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernodename_goeshere> ex. ASPEN
passwordaccess generate
MANAGEDSERVICES schedule webclient
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /mnt/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude /proc/*/.../*
exclude /u0?/oradata/*/.../*
exclude /backup/*/.../*
exclude.dir /proc
exclude.dir /proc/
exclude.dir /dev
exclude.dir /dev/
exclude.dir /mnt
exclude.dir /mnt/
exclude.dir /usr/share/man
exclude dsmsched.log
exclude.dir /var/spool/cups/
exclude.dir /u01/app/sct/suupics
exclude.dir /u01/app/sct/suupics-www
exclude /u01/app/sct/suupics/*
exclude /u01/app/sct/suupics-www/*
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh libstdc++5 ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
11) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
11) run an incremental backup
dsmc incremental
12) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 27
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-03-09 15:21:02.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138078</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17170831</id>
</element>
</collection>
<property name="version">27</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-03-09 15:21:02.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17138109
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh libstdc++5 ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
11) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
11) run an incremental backup
dsmc incremental
12) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 28
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-03-22 09:33:15.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138109</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17170861</id>
</element>
</collection>
<property name="version">28</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-03-22 09:33:15.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17138114
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
10) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
11) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
11) run an incremental backup
dsmc incremental
12) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 29
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-03-25 09:10:22.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138114</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17170866</id>
</element>
</collection>
<property name="version">29</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-03-25 09:10:22.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17138116
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9)
{code}
cd /tmp
wget http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_2.7ubuntu6.1_amd64.deb
dpkg-deb -x ia32-libs_2.7ubuntu6.1_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln -s libstdc++.so.5.0.7 libstdc++.so.5
{code}
11) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
13) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
14) run an incremental backup
dsmc incremental
15) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 30
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-03-25 09:19:57.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138116</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17170868</id>
</element>
</collection>
<property name="version">30</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-03-25 09:19:57.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17138118
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_2.7ubuntu6.1_amd64.deb]
dpkg-deb \-x ia32-libs_2.7ubuntu6.1_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 31
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-03-25 09:28:49.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138118</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17170870</id>
</element>
</collection>
<property name="version">31</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-03-25 09:28:49.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17858594
Fecha creación: 2010-04-19 10:21:41.000
<property name="body"><p>1. Download the client zip file from sherpa or the Oracle site</p>
<p>2. Install the following additional packages:</p>
<ac:structured-macro ac:macro-id="5c4bdbec-c523-46d2-a19f-04d1e8ee6bec" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#apt-get install libaio1 gawk
]] ></ac:plain-text-body></ac:structured-macro>
<p>Additionally, be sure you are running the sun java software, not the default packaged version with Ubuntu. You will also make a link for awk to gawk.</p>
<ac:structured-macro ac:macro-id="4a447483-e9c7-4e23-bb14-ae694a8e6dd5" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin sun-java6-jdk
#cd /etc/alternatives
#ln -s /usr/lib/jvm/java-6-sun/jre/bin/java java
#cd /usr/bin
#ln -s /usr/bin/gawk awk
]] ></ac:plain-text-body></ac:structured-macro>
<p>3. Next, we will initiate the installer to see where it fails and what settings we need to add to our /etc/sysctl.conf file. Initiate the installer as follows, and then CANCEL as soon as you have the values you need:</p>
<ac:structured-macro ac:macro-id="c57db474-245b-4c1c-a785-42caeb2e62bb" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
./runinstaller -ignoreSysPrereqs
]] ></ac:plain-text-body></ac:structured-macro>
<p>You will reach a point where it checks for needed settings, and gives you a list of everything that does not meet requirements. The settings you are interested in are listed in the next step. Make a note of the values the installer recommends.</p>
<p>4. Add the following entries to your /etc/sysctl.conf file: (change values to match what is recommended for your machine - some will be the same, some won't)</p>
<ac:structured-macro ac:macro-id="52d5844b-5c6b-48df-b687-fe32e6851f92" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# Oracle client stuff
kernel.shmmax = 536870912
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
]] ></ac:plain-text-body></ac:structured-macro>
<p>Next, run the following to make the settings active:</p>
<ac:structured-macro ac:macro-id="e72e1f50-6e0a-4d2b-bf33-e23d15d22238" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#sysctl -p
]] ></ac:plain-text-body></ac:structured-macro>
<p>5. Now you can run the installer and ignore the warnings completely (there is a checkbox to do this)</p>
<ac:structured-macro ac:macro-id="21b82212-8dbd-4647-9e31-205bf8c43252" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
./runinstaller -ignoreSysPrereqs
]] ></ac:plain-text-body></ac:structured-macro>
<p>6. Once it is finished, make a note of where you installed it to, and make the following entries in your .bashrc file:</p>
<ac:structured-macro ac:macro-id="4431977c-410d-4fae-ab66-eaa892747fdb" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#Oracle stuff
export ORACLE_HOME=/<path_to_where_you_installed>/product/11.2.0/client_1
export PATH=$PATH:$ORACLE_HOME/bin
export TNS_ADMIN=$ORACLE_HOME/network/admin
]] ></ac:plain-text-body></ac:structured-macro>
<p>Next, run the following to make it active (NOT as root - run as your user):</p>
<ac:structured-macro ac:macro-id="0fe07fc2-7695-4dc3-800c-7e9d1ede51f6" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ . .bashrc
]] ></ac:plain-text-body></ac:structured-macro>
<p>If that is difficult to read, it is:</p>
<ac:structured-macro ac:macro-id="d73a3fd7-141d-4ff6-b703-04b7d445cfab" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
<dot><space><dot><bashrc>
]] ></ac:plain-text-body></ac:structured-macro>
<p>7. Lastly, copy the contents of a known good tnsnames.ora file, and paste it into the following file:</p>
<ac:structured-macro ac:macro-id="b4e82fec-06f4-4b2c-873c-ad440a9e3936" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ORACLE_HOME/network/admin/tnsnames.ora
]] ></ac:plain-text-body></ac:structured-macro>
<p>8. Run tnsping against any of the tnsnames entries, and make sure you get a response.</p></property>
hibernateVersion: 5
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-19 10:35:21.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858594</id>
<property name="hibernateVersion">5</property>
<property name="title">Oracle full administrative client 11gR2 on Ubuntu Karmic Koala (9.10) 64-bit</property>
<property name="lowerTitle">oracle full administrative client 11gr2 on ubuntu karmic koala (9.10) 64-bit</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17891362</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454144</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-19 10:21:41.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-19 10:35:21.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858598</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858599</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858596</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858603</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858601</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584958</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182149</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 17858596
Fecha creación: 2010-04-19 10:21:41.000
<property name="body">1. Download the client zip file from sherpa or the Oracle site
2. Install the following additional packages:
{code}
#apt-get install libaio1 gawk
{code}
Additionally, be sure you are running the sun java software, not the default packaged version with Ubuntu.
{code}
#apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin sun-java6-jdk
#cd /etc/alternatives
#ln -s /usr/lib/jvm/java-6-sun/jre/bin/java java
#cd /usr/bin
#ln -s /usr/bin/gawk awk
{code}
3. Next, we will initiate the installer to see where it fails and what settings we need to add to our /etc/sysctl.conf file. Initiate the installer as follows, and then CANCEL as soon as you have the values you need:
{code}
./runinstaller -ignoreSysPrereqs
{code}
You will reach a point where it checks for needed settings, and gives you a list of everything that does not meet requirements. The settings you are interested in are listed in the next step. Make a note of the values the installer recommends.
3. Add the following entries to your /etc/sysctl.conf file: (change values to match what is recommended for your machine - some will be the same, some won't)
{code}
# Oracle client stuff
kernel.shmmax = 536870912
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
{code}
Next, run the following to make the settings active:
{code}
#sysctl -p
{code}
2. Unzip and run the installer as follows:
{code}
./runinstaller -ignoreSysPrereqs
{code}</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-19 10:21:41.000
originalVersion: 17858594
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858596</id>
<property name="hibernateVersion">2</property>
<property name="title">Oracle full administrative client 11gR2 on Ubuntu Karmic Koala (9.10) 64-bit</property>
<property name="lowerTitle">oracle full administrative client 11gr2 on ubuntu karmic koala (9.10) 64-bit</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17891364</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-19 10:21:41.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-19 10:21:41.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858594</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17858598
Fecha creación: 2010-04-19 10:21:41.000
<property name="body">1. Download the client zip file from sherpa or the Oracle site
2. Install the following additional packages:
{code}
#apt-get install libaio1 gawk
{code}
Additionally, be sure you are running the sun java software, not the default packaged version with Ubuntu. You will also make a link for awk to gawk.
{code}
#apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin sun-java6-jdk
#cd /etc/alternatives
#ln -s /usr/lib/jvm/java-6-sun/jre/bin/java java
#cd /usr/bin
#ln -s /usr/bin/gawk awk
{code}
3. Next, we will initiate the installer to see where it fails and what settings we need to add to our /etc/sysctl.conf file. Initiate the installer as follows, and then CANCEL as soon as you have the values you need:
{code}
./runinstaller -ignoreSysPrereqs
{code}
You will reach a point where it checks for needed settings, and gives you a list of everything that does not meet requirements. The settings you are interested in are listed in the next step. Make a note of the values the installer recommends.
4. Add the following entries to your /etc/sysctl.conf file: (change values to match what is recommended for your machine - some will be the same, some won't)
{code}
# Oracle client stuff
kernel.shmmax = 536870912
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
{code}
Next, run the following to make the settings active:
{code}
#sysctl -p
{code}
5. Now you can run the installer and ignore the warnings completely (there is a checkbox to do this)
{code}
./runinstaller -ignoreSysPrereqs
{code}
6. Once it is finished, make a note of where you installed it to, and make the following entries in your .bashrc file:
{code}
#Oracle stuff
export ORACLE_HOME=/<path_to_where_you_installed>/product/11.2.0/client_1
export PATH=$PATH:$ORACLE_HOME/bin
{code}
Next, run the following to make it active (NOT as root - run as your user):
{code}
$ . .bashrc
{code}
If that is difficult to read, it is:
<dot><space><dot><bashrc>
{code}</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-19 10:28:49.000
originalVersion: 17858594
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858598</id>
<property name="hibernateVersion">2</property>
<property name="title">Oracle full administrative client 11gR2 on Ubuntu Karmic Koala (9.10) 64-bit</property>
<property name="lowerTitle">oracle full administrative client 11gr2 on ubuntu karmic koala (9.10) 64-bit</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17891366</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-19 10:21:41.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-19 10:28:49.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858594</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17858599
Fecha creación: 2010-04-19 10:21:41.000
<property name="body">1. Download the client zip file from sherpa or the Oracle site
2. Install the following additional packages:
{code}
#apt-get install libaio1 gawk
{code}
Additionally, be sure you are running the sun java software, not the default packaged version with Ubuntu. You will also make a link for awk to gawk.
{code}
#apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin sun-java6-jdk
#cd /etc/alternatives
#ln -s /usr/lib/jvm/java-6-sun/jre/bin/java java
#cd /usr/bin
#ln -s /usr/bin/gawk awk
{code}
3. Next, we will initiate the installer to see where it fails and what settings we need to add to our /etc/sysctl.conf file. Initiate the installer as follows, and then CANCEL as soon as you have the values you need:
{code}
./runinstaller -ignoreSysPrereqs
{code}
You will reach a point where it checks for needed settings, and gives you a list of everything that does not meet requirements. The settings you are interested in are listed in the next step. Make a note of the values the installer recommends.
4. Add the following entries to your /etc/sysctl.conf file: (change values to match what is recommended for your machine - some will be the same, some won't)
{code}
# Oracle client stuff
kernel.shmmax = 536870912
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
{code}
Next, run the following to make the settings active:
{code}
#sysctl -p
{code}
5. Now you can run the installer and ignore the warnings completely (there is a checkbox to do this)
{code}
./runinstaller -ignoreSysPrereqs
{code}
6. Once it is finished, make a note of where you installed it to, and make the following entries in your .bashrc file:
{code}
#Oracle stuff
export ORACLE_HOME=/<path_to_where_you_installed>/product/11.2.0/client_1
export PATH=$PATH:$ORACLE_HOME/bin
{code}
Next, run the following to make it active (NOT as root - run as your user):
{code}
{code}
$ . .bashrc
{code}
If that is difficult to read, it is:
{code}
<dot><space><dot><bashrc>
{code}</property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-19 10:29:47.000
originalVersion: 17858594
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858599</id>
<property name="hibernateVersion">2</property>
<property name="title">Oracle full administrative client 11gR2 on Ubuntu Karmic Koala (9.10) 64-bit</property>
<property name="lowerTitle">oracle full administrative client 11gr2 on ubuntu karmic koala (9.10) 64-bit</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17891367</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-19 10:21:41.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-19 10:29:47.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858594</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17858601
Fecha creación: 2010-04-19 10:21:41.000
<property name="body">1. Download the client zip file from sherpa or the Oracle site
2. Install the following additional packages:
{code}
#apt-get install libaio1 gawk
{code}
Additionally, be sure you are running the sun java software, not the default packaged version with Ubuntu. You will also make a link for awk to gawk.
{code}
#apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin sun-java6-jdk
#cd /etc/alternatives
#ln -s /usr/lib/jvm/java-6-sun/jre/bin/java java
#cd /usr/bin
#ln -s /usr/bin/gawk awk
{code}
3. Next, we will initiate the installer to see where it fails and what settings we need to add to our /etc/sysctl.conf file. Initiate the installer as follows, and then CANCEL as soon as you have the values you need:
{code}
./runinstaller -ignoreSysPrereqs
{code}
You will reach a point where it checks for needed settings, and gives you a list of everything that does not meet requirements. The settings you are interested in are listed in the next step. Make a note of the values the installer recommends.
4. Add the following entries to your /etc/sysctl.conf file: (change values to match what is recommended for your machine - some will be the same, some won't)
{code}
# Oracle client stuff
kernel.shmmax = 536870912
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
{code}
Next, run the following to make the settings active:
{code}
#sysctl -p
{code}
5. Now you can run the installer and ignore the warnings completely (there is a checkbox to do this)
{code}
./runinstaller -ignoreSysPrereqs
{code}
6. Once it is finished, make a note of where you installed it to, and make the following entries in your .bashrc file:
{code}
#Oracle stuff
export ORACLE_HOME=/<path_to_where_you_installed>/product/11.2.0/client_1
export PATH=$PATH:$ORACLE_HOME/bin
{code}
Next, run the following to make it active (NOT as root - run as your user):
{code}
$ . .bashrc
{code}
If that is difficult to read, it is:
{code}
<dot><space><dot><bashrc>
{code}</property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-19 10:30:26.000
originalVersion: 17858594
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858601</id>
<property name="hibernateVersion">1</property>
<property name="title">Oracle full administrative client 11gR2 on Ubuntu Karmic Koala (9.10) 64-bit</property>
<property name="lowerTitle">oracle full administrative client 11gr2 on ubuntu karmic koala (9.10) 64-bit</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17891369</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-19 10:21:41.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-19 10:30:26.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858594</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17858603
Fecha creación: 2010-04-19 10:21:41.000
<property name="body">1. Download the client zip file from sherpa or the Oracle site
2. Install the following additional packages:
{code}
#apt-get install libaio1 gawk
{code}
Additionally, be sure you are running the sun java software, not the default packaged version with Ubuntu. You will also make a link for awk to gawk.
{code}
#apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin sun-java6-jdk
#cd /etc/alternatives
#ln -s /usr/lib/jvm/java-6-sun/jre/bin/java java
#cd /usr/bin
#ln -s /usr/bin/gawk awk
{code}
3. Next, we will initiate the installer to see where it fails and what settings we need to add to our /etc/sysctl.conf file. Initiate the installer as follows, and then CANCEL as soon as you have the values you need:
{code}
./runinstaller -ignoreSysPrereqs
{code}
You will reach a point where it checks for needed settings, and gives you a list of everything that does not meet requirements. The settings you are interested in are listed in the next step. Make a note of the values the installer recommends.
4. Add the following entries to your /etc/sysctl.conf file: (change values to match what is recommended for your machine - some will be the same, some won't)
{code}
# Oracle client stuff
kernel.shmmax = 536870912
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
{code}
Next, run the following to make the settings active:
{code}
#sysctl -p
{code}
5. Now you can run the installer and ignore the warnings completely (there is a checkbox to do this)
{code}
./runinstaller -ignoreSysPrereqs
{code}
6. Once it is finished, make a note of where you installed it to, and make the following entries in your .bashrc file:
{code}
#Oracle stuff
export ORACLE_HOME=/<path_to_where_you_installed>/product/11.2.0/client_1
export PATH=$PATH:$ORACLE_HOME/bin
{code}
Next, run the following to make it active (NOT as root - run as your user):
{code}
$ . .bashrc
{code}
If that is difficult to read, it is:
{code}
<dot><space><dot><bashrc>
{code}
7. Lastly, copy the contents of a known good tnsnames.ora file, and paste it into the following file:
{code}
$ORACLE_HOME/network/admin/tnsnames.ora
{code}
8. Run tnsping against any of the tnsnames entries, and make sure you get a response.</property>
hibernateVersion: 1
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-19 10:32:49.000
originalVersion: 17858594
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858603</id>
<property name="hibernateVersion">1</property>
<property name="title">Oracle full administrative client 11gR2 on Ubuntu Karmic Koala (9.10) 64-bit</property>
<property name="lowerTitle">oracle full administrative client 11gr2 on ubuntu karmic koala (9.10) 64-bit</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17891371</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-19 10:21:41.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-19 10:32:49.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858594</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17858608
Fecha creación: 2010-04-20 09:06:58.000
<property name="body"><p>1. Add the following line to the bottom of your /etc/apt/sources.list file:</p>
<ac:structured-macro ac:macro-id="64968a8c-633d-4c5c-a4b8-d5c68ddf3b58" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
deb http://download.virtualbox.org/virtualbox/debian] karmic non-free
]] ></ac:plain-text-body></ac:structured-macro>
<p>2. Import the key:</p>
<ac:structured-macro ac:macro-id="c5504df9-bc65-41b1-a296-63dac6b977d4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -
]] ></ac:plain-text-body></ac:structured-macro>
<p>Refresh the repositories:</p>
<ac:structured-macro ac:macro-id="2f400169-ff3b-40e0-901e-075fff746655" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo apt-get update
]] ></ac:plain-text-body></ac:structured-macro>
<p>3. Install the latest virtualbox package (as of this writing it is virtualbox-3.1) by selecting it in Synaptic, or running this command from a terminal:</p>
<ac:structured-macro ac:macro-id="1722a9ac-f5ab-4824-b2c7-8a868b755c78" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ sudo apt-get install virtualbox-3.1
]] ></ac:plain-text-body></ac:structured-macro>
<p>4. Add yourself to the vboxusers group:</p>
<ac:structured-macro ac:macro-id="387ecade-26cf-45ae-a030-810e563d8f18" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ sudo gpasswd -a YOURUSERNAME vboxusers
]] ></ac:plain-text-body></ac:structured-macro>
<p>5. Find the devgid for the vboxusers group:</p>
<ac:structured-macro ac:macro-id="0c61c2ef-b72d-42fa-9e52-cbacef727075" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ grep vboxusers /etc/group
]] ></ac:plain-text-body></ac:structured-macro>
<p>It will return something like:</p>
<ac:structured-macro ac:macro-id="fd589180-ec16-4ae5-bd15-cfcdb3ddc52c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
vboxusers:x:121:username
]] ></ac:plain-text-body></ac:structured-macro>
<p>Add this line to the bottom of /etc/fstab, replacing the devgid number with your devgid:</p>
<ac:structured-macro ac:macro-id="dc6aa3fa-af67-41d5-9fb5-9af50bd3c2ce" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
none /proc/bus/usb usbfs devgid=125,devmode=664 0 0
]] ></ac:plain-text-body></ac:structured-macro>
<p>After you reboot you should now have USB support in VirtualBox.</p>
<p>Last tested on Ubuntu 9.10 Karmic Koala</p></property>
hibernateVersion: 4
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-20 09:08:41.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858608</id>
<property name="hibernateVersion">4</property>
<property name="title">Virtualbox and USB device support in Ubuntu Karmic Koala</property>
<property name="lowerTitle">virtualbox and usb device support in ubuntu karmic koala</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17891376</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454064</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-20 09:06:58.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-20 09:08:41.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584960</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858610</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182153</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 17858610
Fecha creación: 2010-04-20 09:06:58.000
<property name="body">1. Add the VirtualBox repo for Karmic. Click System > Administration > Software Sources. Click the âThird Party Softwareâ tab. Click âAddâ and enter:
deb http://download.virtualbox.org/virtualbox/debian karmic non-free
2. Import the key:
{code}
sudo wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -
{code}
Click the âReloadâ button in Synaptic to reload the repositories, or run the following commands:
{code}
sudo apt-get update
{code}
3. Install the latest virtualbox package (as of this writing it is virtualbox-3.1) by selecting it in Synaptic, or running this command from a terminal:
{code}
$ sudo apt-get install virtualbox-3.1
{code}
4. Add yourself to the vboxusers group:
{code}
$ sudo gpasswd -a YOURUSERNAME vboxusers
{code}
5. Find the devgid for âvboxusersâ:
{code}
$ grep vboxusers /etc/group
{code}
It will return something like:
{code}
vboxusers:x:121:username
{code}
Add this line to the bottom of /etc/fstab, replacing the devgid number with your devgid:
{code}
none /proc/bus/usb usbfs devgid=125,devmode=664 0 0
{code}
After you reboot you should now have USB support in VirtualBox.
Last tested on Ubuntu 9.10 Karmic Koala</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-20 09:06:58.000
originalVersion: 17858608
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858610</id>
<property name="hibernateVersion">2</property>
<property name="title">Virtualbox and USB device support in Ubuntu Karmic Koala</property>
<property name="lowerTitle">virtualbox and usb device support in ubuntu karmic koala</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17891378</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-20 09:06:58.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-20 09:06:58.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858608</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 17858700
Fecha creación: 2010-05-18 10:41:08.000
<property name="body"><p>Similar to Windows Software Update Services, apt-mirror allows us to store a local copy of the Ubuntu updates repository so our machines don't all have to go out to the internet for updates. &nbsp;Not only does this reduce our bandwidth usage, but updates are delivered extremely quickly over local wire. &nbsp;Here is an example of an /etc/apt/sources.list file from an Ubuntu 10.04 LTS 32-bit server install, pointed at our local repository on sherpa.suu.edu:</p>
<ac:structured-macro ac:macro-id="205f526b-6328-4a23-b218-240c9d744e72" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
deb http://sherpa.suu.edu/ubuntu/ lucid main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://sherpa.suu.edu/ubuntu/ lucid-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://sherpa.suu.edu/ubuntu/ lucid universe
deb http://sherpa.suu.edu/ubuntu/ lucid-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://sherpa.suu.edu/ubuntu/ lucid multiverse
deb http://sherpa.suu.edu/ubuntu/ lucid-updates multiverse
## Uncomment the following line to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://sherpa.suu.edu/ubuntupartner lucid partner
## Security Updates
deb http://sherpa.suu.edu/updates lucid-security main restricted
deb http://sherpa.suu.edu/updates lucid-security universe
deb http://sherpa.suu.edu/updates lucid-security multiverse
]] ></ac:plain-text-body></ac:structured-macro>
<p>NOTE: We do not currently mirror the deb-src (sources) files, since we rarely if ever compile our packages from source. Adding these sources to every subsection listed here would more than double the required space to store them. Your original sources.list file may or may not reference the source repositories. If it does, you should remove the lines from your file, or at least comment them out. If you need them, the only solution at this time is to leave them pointed at the original ubuntu location.</p>
<p>For reference, here is a standard unmodified sources.list from an 11.10 box:</p>
<ac:structured-macro ac:macro-id="24186098-63ea-43e2-a430-55a9759eff08" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
deb http://us.archive.ubuntu.com/ubuntu/ oneiric main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric main restricted
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates main restricted
deb http://us.archive.ubuntu.com/ubuntu/ oneiric universe
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric universe
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates universe
deb http://us.archive.ubuntu.com/ubuntu/ oneiric multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric multiverse
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse
# deb http://us.archive.ubuntu.com/ubuntu/ maverick-backports main restricted universe multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ maverick-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu oneiric partner
deb-src http://archive.canonical.com/ubuntu oneiric partner
deb http://extras.ubuntu.com/ubuntu oneiric main
deb-src http://extras.ubuntu.com/ubuntu oneiric main
deb http://security.ubuntu.com/ubuntu oneiric-security main restricted
deb-src http://security.ubuntu.com/ubuntu oneiric-security main restricted
deb http://security.ubuntu.com/ubuntu oneiric-security universe
deb-src http://security.ubuntu.com/ubuntu oneiric-security universe
deb http://security.ubuntu.com/ubuntu oneiric-security multiverse
deb-src http://security.ubuntu.com/ubuntu oneiric-security multiverse
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 5
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-11-07 10:37:37.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858700</id>
<property name="hibernateVersion">5</property>
<property name="title">Ubuntu local updates repository (example sources.list)</property>
<property name="lowerTitle">ubuntu local updates repository (example sources.list)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">17891464</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454046</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-05-18 10:41:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-11-07 10:37:37.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584977</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346828</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182188</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 18841879
Fecha creación: 2009-01-14 11:29:48.000
<property name="body">First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as. The example given here is from our xmlbill server.
h5. Step 1: To make Tomcat start automatically, you must create a file in /etc/init.d called tomcat. Populate the file with the following:
{code}
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=/home/billservice/apps/apache-tomcat-6.0.18
export TOMCAT_USER=billservice
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
{code}
A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).
h5. Set to start automatically
Run the following commands as root:
{code}
#chmod 755 /etc/init.d/tomcat
#update-rc.d tomcat defaults
{code}
That's it; reboot to verify that everything starts the way you expect.</property>
hibernateVersion: 1
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2009-07-02 14:52:02.000
originalVersion: 10223743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">18841879</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">18874632</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2009-07-02 14:52:02.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21069913
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v552/5.5.2.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_2.7ubuntu6.1_amd64.deb]
dpkg-deb \-x ia32-libs_2.7ubuntu6.1_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 32
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-03-25 09:39:50.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069913</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102681</id>
</element>
</collection>
<property name="version">32</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-03-25 09:39:50.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21069915
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs
3) unpack the archive
tar xvf 5.5.2.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.1/debian TIVsm-API-5.5.2/DEBIAN
mv TIVsm-BA-5.5.1/debian TIVsm-BA-5.5.2/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.2
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.2/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.2
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.2
dpkg -b TIVsm-BA-5.5.2
8) install *.deb packages
dpkg -i TIVsm-API-5.5.2.deb
dpkg -i TIVsm-BA-5.5.2.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_2.7ubuntu6.1_amd64.deb]
dpkg-deb \-x ia32-libs_2.7ubuntu6.1_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 33
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-01 08:17:16.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069915</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102683</id>
</element>
</collection>
<property name="version">33</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-01 08:17:16.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21069916
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_2.7ubuntu6.1_amd64.deb]
dpkg-deb \-x ia32-libs_2.7ubuntu6.1_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 34
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-01 08:18:27.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069916</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102684</id>
</element>
</collection>
<property name="version">34</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-01 08:18:27.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21069918
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_2.7ubuntu6.1_amd64.deb]
dpkg-deb \-x ia32-libs_2.7ubuntu6.1_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 35
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-01 08:39:42.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069918</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102686</id>
</element>
</collection>
<property name="version">35</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-01 08:39:42.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21069921
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu9_amd64.deb]
dpkg-deb \-x ia32-libs_20090808ubuntu9_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 36
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-01 08:55:02.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069921</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102689</id>
</element>
</collection>
<property name="version">36</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-01 08:55:02.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21069922
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example dsm.sys file - Ubuntu Server 64-bit
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
virtualmount /
virtualmount /home
virtualmount /etc
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/etc
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu9_amd64.deb]
dpkg-deb \-x ia32-libs_20090808ubuntu9_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 37
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-02 15:11:26.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069922</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102690</id>
</element>
</collection>
<property name="version">37</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-02 15:11:26.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21069923
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h1. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example dsm.sys file - Ubuntu Server 64-bit
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
virtualmountpoint /
virtualmountpoint /home
virtualmountpoint /etc
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/etc
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu9_amd64.deb]
dpkg-deb \-x ia32-libs_20090808ubuntu9_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 38
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-02 15:12:17.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069923</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102691</id>
</element>
</collection>
<property name="version">38</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-02 15:12:17.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21069924
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h4. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example dsm.sys file - Ubuntu Server 64-bit
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
virtualmountpoint /
virtualmountpoint /home
virtualmountpoint /etc
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/etc
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
export LANG=en_US;
export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu9_amd64.deb]
dpkg-deb \-x ia32-libs_20090808ubuntu9_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 39
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-02 15:12:31.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069924</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102692</id>
</element>
</collection>
<property name="version">39</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-02 15:12:31.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21069925
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h4. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example dsm.sys file - Ubuntu Server 64-bit
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
virtualmountpoint /
virtualmountpoint /home
virtualmountpoint /etc
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/etc
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu9_amd64.deb]
dpkg-deb \-x ia32-libs_20090808ubuntu9_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 40
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-02 15:13:07.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21069925</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102693</id>
</element>
</collection>
<property name="version">40</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-02 15:13:07.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21070062
Fecha creación: 2010-11-17 16:17:59.000
<property name="body"><h3>Create log4j.properties file</h3>
<p>Create a log4j.properties file in the $CATALINA_HOME/lib directory with the following contents (modify file size as desired):</p>
<ac:structured-macro ac:macro-id="494771eb-cd14-4e8b-b984-bcddfd89257f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
log4j.rootLogger=INFO, CATALINA
# Define all the appenders
log4j.appender.CATALINA=org.apache.log4j.RollingFileAppender
log4j.appender.CATALINA.file=${catalina.base}/logs/catalina.log
log4j.appender.CATALINA.MaxFileSize=50MB
log4j.appender.CATALINA.MaxBackupIndex=200
log4j.appender.CATALINA.layout=org.apache.log4j.PatternLayout
log4j.appender.CATALINA.append=true
log4j.rootCategory=ALL, CATALINA
]] ></ac:plain-text-body></ac:structured-macro>
<h3>Download JAR files</h3>
<p>Obtain a copy of all JAR files from the sherpa server under Tomcat\log4j folder</p>
<h3>Stop Tomcat, place JARs in directories</h3>
<p>Stop Tomcat</p>
<p>Place the log4j-1.2.x.jar in $CATALINA_HOME/lib.<br />
Replace $CATALINA_HOME/bin/tomcat-juli.jar with downloaded tomcat-juli.jar<br />
Place downloaded tomcat-juli-adapters.jar in $CATALINA_HOME/lib<br />
Delete $CATALINA_BASE/conf/logging.properties to prevent java.util.logging generating zero length log files</p>
<p>Start Tomcat</p></property>
hibernateVersion: 3
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-03-15 09:21:12.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21070062</id>
<property name="hibernateVersion">3</property>
<property name="title">Configure log4j on servers running Tomcat</property>
<property name="lowerTitle">configure log4j on servers running tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102828</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-11-17 16:17:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-03-15 09:21:12.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585186</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22577231</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22577233</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">21070064</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182827</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 21070064
Fecha creación: 2010-11-17 16:17:59.000
<property name="body">h3. Create log4j.properties file
Create a log4j.properties file in the $CATALINA_HOME/lib directory with the following contents (modify file size as desired):
{code}
log4j.rootLogger=INFO, R
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${catalina.base}/logs/tomcat.log
log4j.appender.R.MaxFileSize=10MB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-17 16:17:59.000
originalVersion: 21070062
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21070064</id>
<property name="hibernateVersion">1</property>
<property name="title">Configure log4j on servers running Tomcat</property>
<property name="lowerTitle">configure log4j on servers running tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21102830</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-11-17 16:17:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-17 16:17:59.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">21070062</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21889124
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h4. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example dsm.sys file - Ubuntu Server 64-bit
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
virtualmountpoint /
virtualmountpoint /home
virtualmountpoint /etc
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/etc
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu9_amd64.deb]
dpkg-deb \-x ia32-libs_20090808ubuntu9_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 2
version: 41
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-02 15:14:44.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21889124</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21921891</id>
</element>
</collection>
<property name="version">41</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-02 15:14:44.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 21889126
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h4. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example dsm.sys file - Ubuntu Server 64-bit
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
virtualmountpoint /
virtualmountpoint /home
virtualmountpoint /etc
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/etc
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
{code}
h2. Example dsm.sys for Red Hat servers
{code}
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename BIRCHINB
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /boot/grub
exclude.dir /boot/lost+found
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lib/lsb
exclude.dir /lib/modules
exclude.dir /lib/rtkaio
exclude.dir /lib/security
exclude.dir /lib/udev
exclude.dir /lost+found
exclude.dir /media
exclude.dir /misc
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /selinux
exclude.dir /sys
exclude.dir /tftpboot
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr
{code}
h2. Configuring Automatic Startup
h4. Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu9_amd64.deb]
dpkg-deb \-x ia32-libs_20090808ubuntu9_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 2
version: 42
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-13 08:57:01.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">21889126</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">21921893</id>
</element>
</collection>
<property name="version">42</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-13 08:57:01.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22151231
Fecha creación: 2011-01-31 09:34:59.000
<property name="body"><h3>Server-side config files</h3><h5>/etc/services</h5><p>Append the following lines to the end of the file:</p><ac:structured-macro ac:macro-id="c01c70c1-3dd6-45f9-840e-c0cf66349a18" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[# Local services
rquotad 4003/tcp
rquotad 4003/udp
]] ></ac:plain-text-body></ac:structured-macro><h5>/etc/exports</h5><ac:structured-macro ac:macro-id="38d9c3cf-d3f0-41e5-aaf5-1e0c70e7e200" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[/usr/local/jobout 134.250.7.110(rw,sync) 134.250.7.111(rw,sync)
]] ></ac:plain-text-body></ac:structured-macro><h5>/etc/sysconfig/nfs</h5><ac:structured-macro ac:macro-id="3da0d68e-4667-4eed-894d-96052926023d" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V1="no"
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=4003
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=4001
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=4001
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=4002
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=4001
# Outgoing port statd should used. The default is port
# is random
STATD_OUTGOING_PORT=4004
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS="-vvv"
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS="-vvv"
# Don't load security modules in to the kernel
#SECURE_NFS_MODS="noload"
#
# Don't load sunrpc module.
#RPCMTAB="noload"
#
]] ></ac:plain-text-body></ac:structured-macro><h5>/etc/hosts.allow</h5><ac:structured-macro ac:macro-id="f3ec6a0a-d9f7-42b1-8a84-378d364ce844" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[portmap: 134.250.7.110, 134.250.7.111
lockd: 134.250.7.110, 134.250.7.111
rquotad: 134.250.7.110, 134.250.7.111
mountd: 134.250.7.110, 134.250.7.111
statd: 134.250.7.110, 134.250.7.111
]] ></ac:plain-text-body></ac:structured-macro><h5>/etc/hosts.deny</h5><ac:structured-macro ac:macro-id="3a69eed4-bf24-4df4-9577-d3c70cf459c3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL
]] ></ac:plain-text-body></ac:structured-macro><h3>Troubleshooting</h3><p>If things aren't starting up as expected, try the following:</p><ol><li>&nbsp;Stop all services on the server:<ol><li>service nfs stop</li><li>service nfslock stop</li><li>service portmap stop</li><li>service rpcsvcgssd stop</li><li>service rpcgssd stop</li><li>service rpcidmapd stop</li></ol></li><li>Start all services in the following order:<ol><li>service portmap start</li><li>service nfslock start</li><li>service rpcsvcgssd start</li><li>service nfs restart</li></ol></li></ol></property>
hibernateVersion: 6
version: 10
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-06-05 09:35:25.941
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
<property name="hibernateVersion">6</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22118459</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454091</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-06-05 09:35:25.941</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151233</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151235</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151237</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151239</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151243</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151241</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585208</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">27361287</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182884</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 22151233
Fecha creación: 2011-01-31 09:34:59.000
<property name="body">h3. Server-side config files
h5. /etc/services
Append the following lines to the end of the file:
{code}
# Local services
rquotad 4003/tcp
rquotad 4003/udp
{code}</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-31 09:34:59.000
originalVersion: 22151231
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151233</id>
<property name="hibernateVersion">2</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22118461</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-31 09:34:59.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22151235
Fecha creación: 2011-01-31 09:34:59.000
<property name="body">h3. Server-side config files
h5. /etc/services
Append the following lines to the end of the file:
{code}
# Local services
rquotad 4003/tcp
rquotad 4003/udp
{code}
h5. /etc/exports
{code}
/usr/local/jobout 134.250.5.0/24(rw,sync)
{code}</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-31 09:36:18.000
originalVersion: 22151231
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151235</id>
<property name="hibernateVersion">2</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22118463</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-31 09:36:18.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22151237
Fecha creación: 2011-01-31 09:34:59.000
<property name="body">h3. Server-side config files
h5. /etc/services
Append the following lines to the end of the file:
{code}
# Local services
rquotad 4003/tcp
rquotad 4003/udp
{code}
h5. /etc/exports
{code}
/usr/local/jobout 134.250.5.0/24(rw,sync)
{code}
h5. /etc/sysconfig/nfs
{code}
#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V1="no"
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=4003
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=4001
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=4001
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=4002
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=4001
# Outgoing port statd should used. The default is port
# is random
STATD_OUTGOING_PORT=4004
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS="-vvv"
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS="-vvv"
# Don't load security modules in to the kernel
#SECURE_NFS_MODS="noload"
#
# Don't load sunrpc module.
#RPCMTAB="noload"
#
{code}</property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-31 09:37:24.000
originalVersion: 22151231
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151237</id>
<property name="hibernateVersion">2</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22118465</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-31 09:37:24.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22151239
Fecha creación: 2011-01-31 09:34:59.000
<property name="body">h3. Server-side config files
h5. /etc/services
Append the following lines to the end of the file:
{code}
# Local services
rquotad 4003/tcp
rquotad 4003/udp
{code}
h5. /etc/exports
{code}
/usr/local/jobout 134.250.5.0/24(rw,sync)
{code}
h5. /etc/sysconfig/nfs
{code}
#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V1="no"
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=4003
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=4001
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=4001
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=4002
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=4001
# Outgoing port statd should used. The default is port
# is random
STATD_OUTGOING_PORT=4004
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS="-vvv"
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS="-vvv"
# Don't load security modules in to the kernel
#SECURE_NFS_MODS="noload"
#
# Don't load sunrpc module.
#RPCMTAB="noload"
#
{code}
h5. /etc/hosts.allow
{code}
portmap: 134.250.5.0/24
lockd: 134.250.5.0/24
rquotad: 134.250.5.0/24
mountd: 134.250.5.0/24
statd: 134.250.5.0/24
{code}</property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-31 10:01:48.000
originalVersion: 22151231
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151239</id>
<property name="hibernateVersion">2</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22118467</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-31 10:01:48.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22151241
Fecha creación: 2011-01-31 09:34:59.000
<property name="body">h3. Server-side config files
h5. /etc/services
Append the following lines to the end of the file:
{code}
# Local services
rquotad 4003/tcp
rquotad 4003/udp
{code}
h5. /etc/exports
{code}
/usr/local/jobout 134.250.5.0/24(rw,sync)
{code}
h5. /etc/sysconfig/nfs
{code}
#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V1="no"
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=4003
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=4001
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=4001
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=4002
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=4001
# Outgoing port statd should used. The default is port
# is random
STATD_OUTGOING_PORT=4004
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS="-vvv"
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS="-vvv"
# Don't load security modules in to the kernel
#SECURE_NFS_MODS="noload"
#
# Don't load sunrpc module.
#RPCMTAB="noload"
#
{code}
h5. /etc/hosts.allow
{code}
portmap: 134.250.5.0/24
lockd: 134.250.5.0/24
rquotad: 134.250.5.0/24
mountd: 134.250.5.0/24
statd: 134.250.5.0/24
{code}
h5. /etc/hosts.deny
{code}
portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL
{code}</property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-31 10:02:45.000
originalVersion: 22151231
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151241</id>
<property name="hibernateVersion">2</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22118469</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-31 10:02:45.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22151243
Fecha creación: 2011-01-31 09:34:59.000
<property name="body">h3. Server-side config files
h5. /etc/services
Append the following lines to the end of the file:
{code}
# Local services
rquotad 4003/tcp
rquotad 4003/udp
{code}
h5. /etc/exports
{code}
/usr/local/jobout 134.250.7.110(rw,sync) 134.250.7.111(rw,sync)
{code}
h5. /etc/sysconfig/nfs
{code}
#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V1="no"
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=4003
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=4001
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=4001
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=4002
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=4001
# Outgoing port statd should used. The default is port
# is random
STATD_OUTGOING_PORT=4004
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS="-vvv"
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS="-vvv"
# Don't load security modules in to the kernel
#SECURE_NFS_MODS="noload"
#
# Don't load sunrpc module.
#RPCMTAB="noload"
#
{code}
h5. /etc/hosts.allow
{code}
portmap: 134.250.5.0/24
lockd: 134.250.5.0/24
rquotad: 134.250.5.0/24
mountd: 134.250.5.0/24
statd: 134.250.5.0/24
{code}
h5. /etc/hosts.deny
{code}
portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL
{code}</property>
hibernateVersion: 2
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-31 10:08:44.000
originalVersion: 22151231
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151243</id>
<property name="hibernateVersion">2</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22118471</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-31 10:08:44.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22151287
Fecha creación: 2010-03-22 09:31:53.000
<property name="body">{code}
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename BIRCHINB
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /boot/grub
exclude.dir /boot/lost+found
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lib/lsb
exclude.dir /lib/modules
exclude.dir /lib/rtkaio
exclude.dir /lib/security
exclude.dir /lib/udev
exclude.dir /lost+found
exclude.dir /media
exclude.dir /misc
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /selinux
exclude.dir /sys
exclude.dir /tftpboot
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr
{code}</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-03-22 09:31:53.000
originalVersion: 17138077
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151287</id>
<property name="hibernateVersion">2</property>
<property name="title">Example Tivoli dsm.sys file for Red Hat Servers</property>
<property name="lowerTitle">example tivoli dsm.sys file for red hat servers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22118514</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-03-22 09:31:53.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-03-22 09:31:53.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138077</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22380555
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h4. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Example dsm.sys file - Ubuntu Server 64-bit
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
virtualmountpoint /
virtualmountpoint /home
virtualmountpoint /etc
include /home/.../*
include /etc/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
{code}
h2. Example dsm.sys for Red Hat servers
{code}
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename BIRCHINB
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
{code}
h2. Configuring Automatic Startup
Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu9_amd64.deb]
dpkg-deb \-x ia32-libs_20090808ubuntu9_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 43
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-13 09:00:46.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22380555</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22413322</id>
</element>
</collection>
<property name="version">43</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-13 09:00:46.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22577231
Fecha creación: 2010-11-17 16:17:59.000
<property name="body">h3. Create log4j.properties file
Create a log4j.properties file in the $CATALINA_HOME/lib directory with the following contents (modify file size as desired):
{code}
log4j.rootLogger=INFO, R
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${catalina.base}/logs/tomcat.log
log4j.appender.R.MaxFileSize=10MB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
{code}
h3. Download JAR files
Obtain a copy of all JAR files from the sherpa server under Tomcat\log4j folder
h3. Stop Tomcat, place JARs in directories
Stop Tomcat
Place the log4j-1.2.x.jar in $CATALINA_HOME/lib.
Replace $CATALINA_HOME/bin/tomcat-juli.jar with downloaded tomcat-juli.jar
Place downloaded tomcat-juli-adapters.jar in $CATALINA_HOME/lib
Delete $CATALINA_BASE/conf/logging.properties to prevent java.util.logging generating zero length log files
Start Tomcat</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-11-17 16:29:16.000
originalVersion: 21070062
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22577231</id>
<property name="hibernateVersion">2</property>
<property name="title">Configure log4j on servers running Tomcat</property>
<property name="lowerTitle">configure log4j on servers running tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22609997</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-11-17 16:17:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-11-17 16:29:16.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">21070062</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 22577233
Fecha creación: 2010-11-17 16:17:59.000
<property name="body">h3. Create log4j.properties file
Create a log4j.properties file in the $CATALINA_HOME/lib directory with the following contents (modify file size as desired):
{code}
log4j.rootLogger=WARN, CATALINA
# Define all the appenders
log4j.appender.CATALINA=org.apache.log4j.RollingFileAppender
log4j.appender.CATALINA.file=${catalina.base}/logs/catalina.log
log4j.appender.CATALINA.MaxFileSize=50MB
log4j.appender.CATALINA.MaxBackupIndex=200
log4j.appender.CATALINA.layout=org.apache.log4j.PatternLayout
log4j.appender.CATALINA.append=true
log4j.rootCategory=ALL, CATALINA
{code}
h3. Download JAR files
Obtain a copy of all JAR files from the sherpa server under Tomcat\log4j folder
h3. Stop Tomcat, place JARs in directories
Stop Tomcat
Place the log4j-1.2.x.jar in $CATALINA_HOME/lib.
Replace $CATALINA_HOME/bin/tomcat-juli.jar with downloaded tomcat-juli.jar
Place downloaded tomcat-juli-adapters.jar in $CATALINA_HOME/lib
Delete $CATALINA_BASE/conf/logging.properties to prevent java.util.logging generating zero length log files
Start Tomcat</property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-03-15 09:02:23.000
originalVersion: 21070062
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">22577233</id>
<property name="hibernateVersion">2</property>
<property name="title">Configure log4j on servers running Tomcat</property>
<property name="lowerTitle">configure log4j on servers running tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">22609999</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-11-17 16:17:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-03-15 09:02:23.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">21070062</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23068743
Fecha creación: 2011-04-04 15:52:05.000
<property name="body"><h4>/&lt;tomcat_home&gt;/conf/Catalina/localhost/manager.xml</h4>
<ac:structured-macro ac:macro-id="9ea25fab-b81b-403a-972b-10071903b1b9" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0?
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Context configuration file for the Tomcat Manager Web App
$Id: manager.xml 562814 2007-08-05 03:52:04Z markt $
-->
<Context docBase="${catalina.home}/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,134.250.4.*"/>
</Context>
]] ></ac:plain-text-body></ac:structured-macro>
<h4>/&lt;tomcat_home&gt;/conf/server.xml</h4>
<ac:structured-macro ac:macro-id="041d869e-1840-4aa7-8e18-34b92b65dab8" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
<?xml version='1.0' encoding='utf-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" at this level.
Documentation at /docs/config/server.html
-->
<Server port="8005" shutdown="SHUTDOWN">
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />
<!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<!-- Global JNDI resources
Documentation at /docs/jndi-resources-howto.html
-->
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" Note: A "Service" is not itself a "Container",
so you may not define subcomponents such as "Valves" at this level.
Documentation at /docs/config/service.html
-->
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<!-- <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> -->
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- Define a SSL HTTP/1.1 Connector on port 8443
This connector uses the JSSE configuration, when using APR, the
connector should be using the OpenSSL style configuration
described in the APR documentation -->
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11Protocol"
ciphers="SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA"
SSLEnabled="true"
enableLookups="false"
disableUploadTimeout="true"
acceptCount="100"
maxThreads="200"
scheme="https"
secure="true"
clientAuth="false"
keystoreFile="/home/touchnet/ssl/keystore.wc"
keystorePass="<removedforwiki>"
sslProtocol="TLS"
/>
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host).
Documentation at /docs/config/engine.html -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
<!--For clustering, please take a look at documentation at:
/docs/cluster-howto.html (simple how to)
/docs/config/cluster.html (reference documentation) -->
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
<!-- The request dumper valve dumps useful debugging information about
the request and response data received and sent by Tomcat.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
-->
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase" digest="SHA" />
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
</Host>
</Engine>
</Service>
</Server>
]] ></ac:plain-text-body></ac:structured-macro>
<h4>/&lt;tomcat_home&gt;/conf/logging.properties</h4>
<ac:structured-macro ac:macro-id="4737066f-71ed-4521-af71-08b10ac21359" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################
1catalina.org.apache.juli.FileHandler.level = WARNING
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.
2localhost.org.apache.juli.FileHandler.level = WARNING
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.
3manager.org.apache.juli.FileHandler.level = WARNING
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix = manager.
4host-manager.org.apache.juli.FileHandler.level = WARNING
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.FileHandler.prefix = host-manager.
java.util.logging.ConsoleHandler.level = WARNING
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler
# For example, set the com.xyz.foo logger to only log SEVERE
# messages:
#org.apache.catalina.startup.ContextConfig.level = WARNING
#org.apache.catalina.startup.HostConfig.level = WARNING
#org.apache.catalina.session.ManagerBase.level = WARNING
#org.apache.catalina.core.AprLifecycleListener.level=WARNING
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 9
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-08 09:54:36.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
Colección: labellings
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068743</id>
<property name="hibernateVersion">9</property>
<property name="title">Tomcat configuration files - SUU Standard</property>
<property name="lowerTitle">tomcat configuration files - suu standard</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101507</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454067</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:52:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-08 09:54:36.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068745</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068756</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068754</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068766</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068768</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585252</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181705</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<collection name="labellings" class="java.util.Collection">
<element class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">23199745</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 23068745
Fecha creación: 2011-04-04 15:52:05.000
<property name="body">h4. /<tomcat_home>/conf/Catalina/localhost/manager.xml
{code}
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0?
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Context configuration file for the Tomcat Manager Web App
$Id: manager.xml 562814 2007-08-05 03:52:04Z markt $
-->
<Context docBase="${catalina.home}/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,134.250.4.*"/>
</Context>
<code></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-04 15:52:05.000
originalVersion: 23068743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068745</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat configuration files - SUU Standard</property>
<property name="lowerTitle">tomcat configuration files - suu standard</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101509</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:52:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-04 15:52:05.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23068747
Fecha creación: 2011-04-04 15:56:08.000
<property name="body"><h4>Populate /etc/init.d/suu_tomcat</h4>
<ac:structured-macro ac:macro-id="c628c78a-0c40-4901-9580-3d576bfce11f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=<tomcat_home_dir>
export TOMCAT_USER=<tomcat user>
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/suu_tomcat start|stop|restart"
;;
esac
exit 0
]] ></ac:plain-text-body></ac:structured-macro>
<p>A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).</p>
<h4>Set for automatic startup</h4>
<p>Run the following as root (Ubuntu and Red Hat):</p>
<ac:structured-macro ac:macro-id="e4ff15dc-8cf6-4cea-9f72-7b5648188ec7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
chmod 755 /etc/init.d/suu_tomcat
]] ></ac:plain-text-body></ac:structured-macro>
<p>Next, run the following as root:<br />
For Red Hat:</p>
<ac:structured-macro ac:macro-id="c51918e2-f9ea-40f3-a082-ab9ea558735f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
chkconfig --add suu_tomcat
chkconfig --level 345 suu_tomcat on
]] ></ac:plain-text-body></ac:structured-macro>
<p>For Ubuntu:</p>
<ac:structured-macro ac:macro-id="bfd79648-ffc0-4031-b2b9-8e621b8e1ebc" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
update-rc.d suu_tomcat defaults
]] ></ac:plain-text-body></ac:structured-macro>
<p>That's it - reboot and make sure it works.</p></property>
hibernateVersion: 5
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-04 16:01:35.000
versionComment: Migrated to Confluence 5.3
contentStatus: current
space: 3014657
parent: 12681451
Colección: historicalVersions
Colección: ancestors
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068747</id>
<property name="hibernateVersion">5</property>
<property name="title">Tomcat Startup Script</property>
<property name="lowerTitle">tomcat startup script</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101511</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:56:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-04 16:01:35.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068749</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068751</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585255</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181706</id>
</element>
</collection>
<property name="contentStatus">current</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
<property name="parent" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681451</id>
</property>
<collection name="ancestors" class="java.util.List">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883631</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681451</id>
</element>
</collection>
</object>
ID: 23068749
Fecha creación: 2011-04-04 15:56:08.000
<property name="body">h4. /etc/init.d/suu_tomcat
{code}
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=/home/billservice/apps/apache-tomcat-6.0.18
export TOMCAT_USER=billservice
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
{code}
A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-04 15:56:08.000
originalVersion: 23068747
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068749</id>
<property name="hibernateVersion">2</property>
<property name="title">Tomcat Startup Script</property>
<property name="lowerTitle">tomcat startup script</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101513</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:56:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-04 15:56:08.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068747</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23068751
Fecha creación: 2011-04-04 15:56:08.000
<property name="body">h4. /etc/init.d/suu_tomcat
{code}
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=<tomcat_home_dir>
export TOMCAT_USER=<tomcat user>
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/suu_tomcat start|stop|restart"
;;
esac
exit 0
{code}
A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or \~.bashrc (user-specific).</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-04 15:57:17.000
originalVersion: 23068747
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068751</id>
<property name="hibernateVersion">2</property>
<property name="title">Tomcat Startup Script</property>
<property name="lowerTitle">tomcat startup script</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101515</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:56:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-04 15:57:17.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068747</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23068754
Fecha creación: 2011-04-04 15:52:05.000
<property name="body">h4. /<tomcat_home>/conf/Catalina/localhost/manager.xml
{code}
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0?
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Context configuration file for the Tomcat Manager Web App
$Id: manager.xml 562814 2007-08-05 03:52:04Z markt $
-->
<Context docBase="${catalina.home}/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,134.250.4.*"/>
</Context>
{code}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-04 15:52:53.000
originalVersion: 23068743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068754</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat configuration files - SUU Standard</property>
<property name="lowerTitle">tomcat configuration files - suu standard</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101518</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:52:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-04 15:52:53.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23068756
Fecha creación: 2011-04-04 15:52:05.000
<property name="body">h4. /<tomcat_home>/conf/Catalina/localhost/manager.xml
{code}
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0?
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Context configuration file for the Tomcat Manager Web App
$Id: manager.xml 562814 2007-08-05 03:52:04Z markt $
-->
<Context docBase="${catalina.home}/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,134.250.4.*"/>
</Context>
{code}
h4. /<tomcat_home>/conf/server.xml
{code}
<?xml version='1.0' encoding='utf-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<tomcat-users>
<role rolename="manager"/>
<user username="tomcatadmin" password="058886b788d1f52e070e3bbb398b4335d8044fb9" roles="manager" />
</tomcat-users>
root@store:/home/touchnet/Tomcat/conf# cat server.xml
<?xml version='1.0' encoding='utf-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" at this level.
Documentation at /docs/config/server.html
-->
<Server port="8005" shutdown="SHUTDOWN">
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />
<!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<!-- Global JNDI resources
Documentation at /docs/jndi-resources-howto.html
-->
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" Note: A "Service" is not itself a "Container",
so you may not define subcomponents such as "Valves" at this level.
Documentation at /docs/config/service.html
-->
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<!-- <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> -->
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- Define a SSL HTTP/1.1 Connector on port 8443
This connector uses the JSSE configuration, when using APR, the
connector should be using the OpenSSL style configuration
described in the APR documentation -->
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11Protocol"
ciphers="SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA"
SSLEnabled="true"
enableLookups="false"
disableUploadTimeout="true"
acceptCount="100"
maxThreads="200"
scheme="https"
secure="true"
clientAuth="false"
keystoreFile="/home/touchnet/ssl/keystore.wc"
keystorePass="<removedforwiki>"
sslProtocol="TLS"
/>
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host).
Documentation at /docs/config/engine.html -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
<!--For clustering, please take a look at documentation at:
/docs/cluster-howto.html (simple how to)
/docs/config/cluster.html (reference documentation) -->
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
<!-- The request dumper valve dumps useful debugging information about
the request and response data received and sent by Tomcat.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
-->
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase" digest="SHA" />
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
</Host>
</Engine>
</Service>
</Server>
{code}</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-04 16:10:10.000
originalVersion: 23068743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068756</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat configuration files - SUU Standard</property>
<property name="lowerTitle">tomcat configuration files - suu standard</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101520</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:52:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-04 16:10:10.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23068757
Fecha creación: 2008-03-06 15:37:40.000
<property name="body">h2. First Step
h5. If IP is assigned by DHCP, make sure /etc/hosts file looks like this:
{code:title=/etc/hosts|borderStyle=solid}127.0.0.1 servername.suu.edu localhost.localdomain localhost servername
{code}
h5. If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):
{code:title=/etc/hosts|borderStyle=solid}127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
{code}
h2. Second Step
h5. If you need the change to happen immediately without a reboot, run the following command as root:
{code:borderStyle=solid}#hostname yourserver.suu.edu
{code}
h2. Third Step
h5. This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:
{code:borderStyle=solid}yourserver.suu.edu
{code}
h2. Fourth Step
h5. Edit the /etc/sysconfig/network file HOSTNAME line to read:
{code:title=/etc/sysconfig/network|borderStyle=solid}HOSTNAME=yourserver.suu.edu
{code}
h2. Fifth Step
h5. As root, run the following command:
{code:borderStyle=solid}#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
{code}
h2. Sixth Step
h5. Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file
{code}
DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet
{code}
h2. Finally, reboot.</property>
hibernateVersion: 1
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-12-15 16:25:51.000
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068757</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change hostname</property>
<property name="lowerTitle">how to properly change hostname</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101521</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-12-15 16:25:51.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23068766
Fecha creación: 2011-04-04 15:52:05.000
<property name="body">h4. /<tomcat_home>/conf/Catalina/localhost/manager.xml
{code}
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0?
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Context configuration file for the Tomcat Manager Web App
$Id: manager.xml 562814 2007-08-05 03:52:04Z markt $
-->
<Context docBase="${catalina.home}/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,134.250.4.*"/>
</Context>
{code}
h4. /<tomcat_home>/conf/server.xml
{code}
<?xml version='1.0' encoding='utf-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" at this level.
Documentation at /docs/config/server.html
-->
<Server port="8005" shutdown="SHUTDOWN">
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />
<!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<!-- Global JNDI resources
Documentation at /docs/jndi-resources-howto.html
-->
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" Note: A "Service" is not itself a "Container",
so you may not define subcomponents such as "Valves" at this level.
Documentation at /docs/config/service.html
-->
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<!-- <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> -->
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- Define a SSL HTTP/1.1 Connector on port 8443
This connector uses the JSSE configuration, when using APR, the
connector should be using the OpenSSL style configuration
described in the APR documentation -->
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11Protocol"
ciphers="SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA"
SSLEnabled="true"
enableLookups="false"
disableUploadTimeout="true"
acceptCount="100"
maxThreads="200"
scheme="https"
secure="true"
clientAuth="false"
keystoreFile="/home/touchnet/ssl/keystore.wc"
keystorePass="<removedforwiki>"
sslProtocol="TLS"
/>
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host).
Documentation at /docs/config/engine.html -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
<!--For clustering, please take a look at documentation at:
/docs/cluster-howto.html (simple how to)
/docs/config/cluster.html (reference documentation) -->
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
<!-- The request dumper valve dumps useful debugging information about
the request and response data received and sent by Tomcat.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
-->
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase" digest="SHA" />
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
</Host>
</Engine>
</Service>
</Server>
{code}</property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-04 16:12:18.000
originalVersion: 23068743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068766</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat configuration files - SUU Standard</property>
<property name="lowerTitle">tomcat configuration files - suu standard</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101531</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:52:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-04 16:12:18.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23068768
Fecha creación: 2011-04-04 15:52:05.000
<property name="body">h4. /<tomcat_home>/conf/Catalina/localhost/manager.xml
{code}
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0?
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Context configuration file for the Tomcat Manager Web App
$Id: manager.xml 562814 2007-08-05 03:52:04Z markt $
-->
<Context docBase="${catalina.home}/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,134.250.4.*"/>
</Context>
{code}
h4. /<tomcat_home>/conf/server.xml
{code}
<?xml version='1.0' encoding='utf-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" at this level.
Documentation at /docs/config/server.html
-->
<Server port="8005" shutdown="SHUTDOWN">
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />
<!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<!-- Global JNDI resources
Documentation at /docs/jndi-resources-howto.html
-->
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" Note: A "Service" is not itself a "Container",
so you may not define subcomponents such as "Valves" at this level.
Documentation at /docs/config/service.html
-->
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<!-- <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> -->
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- Define a SSL HTTP/1.1 Connector on port 8443
This connector uses the JSSE configuration, when using APR, the
connector should be using the OpenSSL style configuration
described in the APR documentation -->
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11Protocol"
ciphers="SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA"
SSLEnabled="true"
enableLookups="false"
disableUploadTimeout="true"
acceptCount="100"
maxThreads="200"
scheme="https"
secure="true"
clientAuth="false"
keystoreFile="/home/touchnet/ssl/keystore.wc"
keystorePass="<removedforwiki>"
sslProtocol="TLS"
/>
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host).
Documentation at /docs/config/engine.html -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
<!--For clustering, please take a look at documentation at:
/docs/cluster-howto.html (simple how to)
/docs/config/cluster.html (reference documentation) -->
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
<!-- The request dumper valve dumps useful debugging information about
the request and response data received and sent by Tomcat.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
-->
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase" digest="SHA" />
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
</Host>
</Engine>
</Service>
</Server>
{code}</property>
hibernateVersion: 1
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-08 08:57:26.000
originalVersion: 23068743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068768</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat configuration files - SUU Standard</property>
<property name="lowerTitle">tomcat configuration files - suu standard</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23101533</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:52:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-08 08:57:26.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23494876
Fecha creación: 2011-06-03 16:52:26.000
<property name="body"><h4>Current /etc/apt/mirror.list contents</h4>
<ac:structured-macro ac:macro-id="e502af34-96f4-4882-870c-b5b17ea9f48a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
############# config ##################
#
set base_path /home/itftp/APTMIRROR
#
# if you change the base path you must create the directories below with write privileges
#
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
set cleanscript $base_path/var/clean.sh
set defaultarch i386
set nthreads 10
set _tilde 0
#
############# end config ##############
# Main packages for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
# Updates for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
# Security updates
deb-i386 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu hardy-security universe
deb-i386 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security universe
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu lucid-security universe
deb-i386 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security universe
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu maverick-security universe
deb-i386 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security universe
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu natty-security universe
deb-i386 http://security.ubuntu.com/ubuntu natty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu natty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu natty-security multiverse
# Partner repo
deb-i386 http://archive.canonical.com/ubuntu hardy partner
deb-amd64 http://archive.canonical.com/ubuntu hardy partner
deb-i386 http://archive.canonical.com/ubuntu jaunty partner
deb-amd64 http://archive.canonical.com/ubuntu jaunty partner
deb-i386 http://archive.canonical.com/ubuntu lucid partner
deb-amd64 http://archive.canonical.com/ubuntu lucid partner
deb-i386 http://archive.canonical.com/ubuntu maverick partner
deb-amd64 http://archive.canonical.com/ubuntu maverick partner
deb-i386 http://archive.canonical.com/ubuntu natty partner
deb-amd64 http://archive.canonical.com/ubuntu natty partner
# Extras (added as of Maverick)
deb-i386 http://extras.ubuntu.com/ubuntu maverick main
deb-amd64 http://extras.ubuntu.com/ubuntu maverick main
deb-i386 http://extras.ubuntu.com/ubuntu natty main
deb-amd64 http://extras.ubuntu.com/ubuntu natty main
# Cleanup scripts
clean http://archive.ubuntu.com
clean http://security.ubuntu.com
clean http://archive.canonical.com
]] ></ac:plain-text-body></ac:structured-macro>
<h4>Current soft links in /var/www directory</h4>
<ac:structured-macro ac:macro-id="59053279-499e-484c-9d57-91cc1f88b91b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
root@sherpa:/var/www# ls -aslh
total 12K
4.0K drwxr-xr-x 2 root root 4.0K 2011-06-03 16:44 .
4.0K drwxr-xr-x 15 root root 4.0K 2011-06-02 16:58 ..
0 lrwxrwxrwx 1 root root 53 2011-06-03 16:44 extras -> /home/itftp/APTMIRROR/mirror/extras.ubuntu.com/ubuntu
4.0K -rw-r--r-- 1 root root 177 2011-06-02 16:58 index.html
0 lrwxrwxrwx 1 root root 54 2011-06-03 09:46 ubuntu -> /home/itftp/APTMIRROR/mirror/archive.ubuntu.com/ubuntu
0 lrwxrwxrwx 1 root root 57 2011-06-03 09:46 ubuntupartner -> /home/itftp/APTMIRROR/mirror/archive.canonical.com/ubuntu
0 lrwxrwxrwx 1 root root 55 2011-06-03 09:46 updates -> /home/itftp/APTMIRROR/mirror/security.ubuntu.com/ubuntu
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 4
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-06-03 16:56:21.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23494876</id>
<property name="hibernateVersion">4</property>
<property name="title">APT-MIRROR configuration</property>
<property name="lowerTitle">apt-mirror configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527637</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454034</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-06-03 16:52:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-06-03 16:56:21.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181853</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23494878</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585304</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 23494878
Fecha creación: 2011-06-03 16:52:26.000
<property name="body">h4. Current /etc/apt/mirror.list contents
{code}
############# config ##################
#
set base_path /home/itftp/APTMIRROR
#
# if you change the base path you must create the directories below with write privileges
#
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
set cleanscript $base_path/var/clean.sh
set defaultarch i386
set nthreads 10
set _tilde 0
#
############# end config ##############
# Main packages for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
# Updates for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
# Security updates
deb-i386 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu hardy-security universe
deb-i386 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security universe
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu lucid-security universe
deb-i386 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security universe
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu maverick-security universe
deb-i386 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security universe
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu natty-security universe
deb-i386 http://security.ubuntu.com/ubuntu natty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu natty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu natty-security multiverse
# Partner repo
deb-i386 http://archive.canonical.com/ubuntu hardy partner
deb-amd64 http://archive.canonical.com/ubuntu hardy partner
deb-i386 http://archive.canonical.com/ubuntu jaunty partner
deb-amd64 http://archive.canonical.com/ubuntu jaunty partner
deb-i386 http://archive.canonical.com/ubuntu lucid partner
deb-amd64 http://archive.canonical.com/ubuntu lucid partner
deb-i386 http://archive.canonical.com/ubuntu maverick partner
deb-amd64 http://archive.canonical.com/ubuntu maverick partner
deb-i386 http://archive.canonical.com/ubuntu natty partner
deb-amd64 http://archive.canonical.com/ubuntu natty partner
# Extras (added as of Maverick)
deb-i386 http://extras.ubuntu.com/ubuntu maverick main
deb-amd64 http://extras.ubuntu.com/ubuntu maverick main
deb-i386 http://extras.ubuntu.com/ubuntu natty main
deb-amd64 http://extras.ubuntu.com/ubuntu natty main
# Cleanup scripts
clean http://archive.ubuntu.com
clean http://security.ubuntu.com
clean http://archive.canonical.com
{code}
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-06-03 16:52:26.000
originalVersion: 23494876
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23494878</id>
<property name="hibernateVersion">1</property>
<property name="title">APT-MIRROR configuration</property>
<property name="lowerTitle">apt-mirror configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527639</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-06-03 16:52:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-06-03 16:52:26.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23494876</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23495049
Fecha creación: 2011-08-05 07:47:21.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>This is the root page for our HAProxy documentation.</p></ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>How to check on the status of things</strong></p>
<ul>
<li><strong>Check status of HAProxy</strong>
<ul>
<li><a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb3.suu.edu:8001" rel="nofollow">http://halb3.suu.edu:8001</a></li>
</ul>
</li>
<li><strong>Check the status of the nodes</strong>
<ul>
<li>SSH into one of the nodes
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="24c2d397-302e-4385-aaf0-001958d51f54"><ac:plain-text-body><![CDATA[
ssh halb1.suu.edu
sudo crm_mon --one-shot -V | grep Online
# The output will look something like this:
Online: [ halb1 halb2 halb3 ]
]] ></ac:plain-text-body></ac:structured-macro></li>
</ul>
</li>
</ul>
</ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<ul>
<li>We have three load balancer nodes running in a cluster. They are active/active and will automatically take over for the other if one goes down.</li>
<li>The load balance cluster has multiple shared IP addresses. The shared IP addresses are the user-facing IPs and that is where firewall rules are applied for user access.</li>
</ul>
<p>Current production setup example: (note we have more stuff behind our load balancers, but this demonstrates the basic idea.)</p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="3e2c4a7c-6d41-49f2-94e0-bf409b8679e7"><ac:plain-text-body><![CDATA[
shared IP=12.141
^^^^^^^^
12.142 12.143 5.24 5.25
-------+------------+-----------+-----+---
| | | |
+--+--+ +--+--+ +-+-+ +-+-+
| LB1 | | LB2 | | A | | B |
+-----+ +-----+ +---+ +---+
haproxy haproxy web servers
heartbeat heartbeat
pacemaker pacemaker
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>LB1</strong> = halb1.suu.edu<br />
<strong>LB2</strong> = halb2.suu.edu<br />
<strong>A</strong> = api1.suu.edu<br />
<strong>B</strong> = api2.suu.edu<br />
<strong>shared IP</strong> = api.suu.edu</p></property>
hibernateVersion: 7
version: 11
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2012-03-21 10:07:37.000
versionComment: Migration of unmigrated content due to installation of a new plugin
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
<property name="hibernateVersion">7</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527806</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">25591816</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">25591815</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">25591817</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454019</id>
</element>
</collection>
<property name="version">11</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2012-03-21 10:07:37.000</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495055</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495051</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495053</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181888</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887892</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">25395257</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">117407810</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495057</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585317</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669119</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 23495051
Fecha creación: 2011-08-05 07:47:21.000
<property name="body">h2. Install Apache
{code}
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
{code}
h2. Apache SSL
Get our wildcard certificate and private key.
{code}
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
{code}
h2. Configure Apache Virtual Host
{code}
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-05 07:47:21.000
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495051</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527808</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-05 07:47:21.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23495053
Fecha creación: 2011-08-05 07:47:21.000
<property name="body">h2. Install Apache
{code}
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
{code}
h2. Apache SSL
Get our wildcard certificate and private key.
{code}
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
{code}
h2. Configure Apache Virtual Host
{code}
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
{code}
h2. Install HAProxy
{code}
sudo apt-get install haproxy
{code}</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-05 10:44:00.000
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495053</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527810</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-05 10:44:00.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23495055
Fecha creación: 2011-08-05 07:47:21.000
<property name="body">h2. Install Apache
{code}
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
{code}
h2. Apache SSL
Get our wildcard certificate and private key.
{code}
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
{code}
h2. Configure Apache Virtual Host
{code}
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
{code}
h2. Install HAProxy
# http://www.howtoforge.com/setting-up-a-high-availability-load-balancer-with-haproxy-wackamole-spread-on-debian-etch
#
{code}
sudo apt-get install haproxy
{code}</property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-05 12:15:24.000
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495055</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527812</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-05 12:15:24.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23495057
Fecha creación: 2011-08-05 07:47:21.000
<property name="body">h2. Install Apache
{code}
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
{code}
h2. Apache SSL
Get our wildcard certificate and private key.
{code}
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
{code}
h2. Configure Apache Virtual Host
{code}
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
{code}
h2. Install HAProxy
# http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid
{code}
sudo apt-get install haproxy
{code}
h2. Install heartbeat and pacemaker
{code}
sudo apt-get install heartbeat pacemaker
{code}
*Create ha.cf file (main heartbeat config file)*
{code}
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
{code}
*Create authkeys file for heartbeat*
The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.
{code}
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; \
dd if=/dev/urandom bs=512 count=1 | openssl md5 ) \
> /etc/ha.d/authkeys
chmod 0600 /etc/ha.d/authkeys
{code}
*Restart heartbeat*
{code}
sudo /etc/init.d/heartbeat restart
{code}
*Verify that they are online*
{code}
sudo crm_mon -1 | grep Online
{code}
*Configure shared IPAddress*
This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.
{suu-note}
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-note}
{code}
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
*Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
*Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
{code}
*Show running configuration*
{code}
sudo crm configure show
{code}
</property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-08 16:57:15.000
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495057</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527814</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-08 16:57:15.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23495059
Fecha creación: 2011-08-09 08:18:56.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>These are the steps you need to take to put a new service behind our HAProxy load balancers.<br />
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.</p></ac:rich-text-body></ac:macro>
<h2>Setup HAProxy</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>You will need to modify the same file on both load balancer nodes.</li>
<li>Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.</li>
<li>You should also know the front-facing ipaddress that your service will be using for this step.</li>
</ul>
</ac:rich-text-body></ac:macro>
<p><strong>Edit <code>/etc/haproxy/haproxy.cfg</code> (on both nodes)</strong></p>
<p>You will be adding a new server farm. Here is an example farm.</p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d24b2078-0ce9-46cd-a3c4-f878a39b657f"><ac:plain-text-body><![CDATA[
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.25:8080 maxconn 1 check
]] ></ac:plain-text-body></ac:structured-macro>
<p><ac:emoticon ac:name="warning" /> The listen port must be unique, so if 8000 and 8001 are taken, use 8002</p>
<p><strong>Restart haproxy</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="42e769d3-5039-445e-b6fc-c23d6ca3ddf9"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/haproxy restart
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Commit your changes</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="7099d610-457f-4edf-9391-09fad55f090a"><ac:plain-text-body><![CDATA[
cd /etc/haproxy/
sudo hg commit -m "New server config."
]] ></ac:plain-text-body></ac:structured-macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
<a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a>
<a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></p></ac:rich-text-body></ac:macro>
<h2>Setup Apache</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>The same configuration will go on both load balander nodes, however, they are not exactly the same. IP addresses will be different.</li>
<li>You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.</li>
</ul>
</ac:rich-text-body></ac:macro>
<ol>
<li>Create a new virtual host configuration
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="8f668288-381b-4403-bd3a-f755d7a87a16"><ac:plain-text-body><![CDATA[
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Modify yourservice-ssl
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="962c290b-203c-4bfb-aaff-7e8ee178c485"><ac:plain-text-body><![CDATA[
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Enable your new virtual host
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="1d88ee80-7ff1-46ea-9d08-12e658373850"><ac:plain-text-body><![CDATA[
sudo a2ensite yourservice-ssl
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Reload apache
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="dec61e9f-b213-4a57-9c3b-e003e051f5ae"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/apache2 reload
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Commit your changes
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="0adbb605-fc2c-4dc8-a2ea-c316fc965543"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo hg add yourservice-ssl
sudo hg commit -m "New virtual host config file."
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Now do the same thing on the other load balancer node, but make sure the IP addresses for the <strong><code>ProxyPass</code></strong> and <strong><code>ProxyPassReverse</code></strong> are set to the IP address of that node.</li>
</ol>
<h2>Setup your front-facing ipaddress</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.</li>
<li>What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker</li>
</ul>
</ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>Tip:</strong><br />
The following commands only need to be run on one node. They will be replicated automatically to the second node.<br />
<strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu<br />
*eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro>
<ol>
<li><strong>Setup ipaddress resource</strong>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="3af3710a-ac6f-4907-b0ef-2d3c2a8c3577"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask=255.255.255.0 nic=eth0
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Set a preferred node for the ip resource</strong><br />
This tells Pacemaker which node the resource ip should live on when both nodes are up.
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="988fc79e-d299-4d23-ace2-db9daddba225"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Setup Pacemaker monitoring</strong>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="b47bc63b-9f6a-45ac-bbc3-2234906bdab4"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 40s:20s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Show running configuration</strong>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="a863556d-82f2-4700-b308-bcdfba7ee339"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:structured-macro></li>
</ol>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.</p></ac:rich-text-body></ac:macro></property>
hibernateVersion: 6
version: 11
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-08-30 09:01:44.000
versionComment: Migration of unmigrated content due to installation of a new plugin
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
<property name="hibernateVersion">6</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527816</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">23986211</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">23986212</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454020</id>
</element>
</collection>
<property name="version">11</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-08-30 09:01:44.000</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181909</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669278</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887939</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887909</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887894</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887876</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495061</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495062</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585320</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">117408001</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 23495061
Fecha creación: 2011-08-09 08:18:56.000
<property name="body">{suu-info}
These are the steps you need to take to put a new service behind our HAProxy load balancers.
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.
{suu-info}
h2. Setup HAProxy
* You will need to modify the same file on both load balancer nodes.
* Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.
* You should also know the front-facing ipaddress that your service will be using for this step.
*Edit {{/etc/haproxy/haproxy.cfg}} (on both nodes)*
You will be adding a new server farm. Here is an example farm.
{code}
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.24:8080 maxconn 1 check
{code}
(!) The listen port must be unique, so if 8000 and 8001 are taken, use 8002
*Restart haproxy*
{code}
sudo /etc/init.d/haproxy restart
{code}
{suu-tip}
At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
http://halb1.suu.edu:8001
http://halb2.suu.edu:8001
{suu-tip}
h2. Setup Apache
* You will need to do the same configuration on both load balancer nodes.
* You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.
# Create a new virtual host configuration
{code}
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
{code}
# Modify yourservice-ssl
{code}
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
{code}
# Enable your new virtual host
{code}
sudo a2ensite yourservice-ssl
{code}
# Reload apache
{code}
sudo /etc/init.d/apache2 reload
{code}
h2. Setup your front-facing ipaddress
* This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.
* What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker
</property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-09 08:18:56.000
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495061</id>
<property name="hibernateVersion">2</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527818</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-09 08:18:56.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23495062
Fecha creación: 2011-08-09 08:18:56.000
<property name="body">{suu-info}
These are the steps you need to take to put a new service behind our HAProxy load balancers.
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.
{suu-info}
h2. Setup HAProxy
* You will need to modify the same file on both load balancer nodes.
* Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.
* You should also know the front-facing ipaddress that your service will be using for this step.
*Edit {{/etc/haproxy/haproxy.cfg}} (on both nodes)*
You will be adding a new server farm. Here is an example farm.
{code}
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.24:8080 maxconn 1 check
{code}
(!) The listen port must be unique, so if 8000 and 8001 are taken, use 8002
*Restart haproxy*
{code}
sudo /etc/init.d/haproxy restart
{code}
{suu-tip}
At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
http://halb1.suu.edu:8001
http://halb2.suu.edu:8001
{suu-tip}
h2. Setup Apache
* You will need to do the same configuration on both load balancer nodes.
* You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.
# Create a new virtual host configuration
{code}
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
{code}
# Modify yourservice-ssl
{code}
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
{code}
# Enable your new virtual host
{code}
sudo a2ensite yourservice-ssl
{code}
# Reload apache
{code}
sudo /etc/init.d/apache2 reload
{code}
h2. Setup your front-facing ipaddress
* This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.
* What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
# *Setup ipaddress resource*
{code}
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Show running configuration*
{code}
sudo crm configure show
{code}
{suu-tip}
At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.
{suu-tip}</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-09 08:22:14.000
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495062</id>
<property name="hibernateVersion">2</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23527819</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-09 08:22:14.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23887876
Fecha creación: 2011-08-09 08:18:56.000
<property name="body">{suu-info}
These are the steps you need to take to put a new service behind our HAProxy load balancers.
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.
{suu-info}
h2. Setup HAProxy
* You will need to modify the same file on both load balancer nodes.
* Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.
* You should also know the front-facing ipaddress that your service will be using for this step.
*Edit {{/etc/haproxy/haproxy.cfg}} (on both nodes)*
You will be adding a new server farm. Here is an example farm.
{code}
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.24:8080 maxconn 1 check
{code}
(!) The listen port must be unique, so if 8000 and 8001 are taken, use 8002
*Restart haproxy*
{code}
sudo /etc/init.d/haproxy restart
{code}
{suu-tip}
At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
http://halb1.suu.edu:8001
http://halb2.suu.edu:8001
{suu-tip}
h2. Setup Apache
* You will need to do the same configuration on both load balancer nodes.
* You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.
# Create a new virtual host configuration
{code}
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
{code}
# Modify yourservice-ssl
{code}
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
{code}
# Enable your new virtual host
{code}
sudo a2ensite yourservice-ssl
{code}
# Reload apache
{code}
sudo /etc/init.d/apache2 reload
{code}
h2. Setup your front-facing ipaddress
* This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.
* What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
# *Setup ipaddress resource*
{code}
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Show running configuration*
{code}
sudo crm configure show
{code}
{suu-tip}
At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.
{suu-tip}</property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-09 08:22:48.000
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887876</id>
<property name="hibernateVersion">2</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23920644</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-09 08:22:48.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23887880
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="37d8a760-3789-4805-90ad-ac9fbee775ef"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:structured-macro><h2>Configure Apache to run on ports 445, 5001, and 5000 in addition to the defaults</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="51ec960a-53b6-49ab-8b0c-add78b2d7c45"><ac:plain-text-body><![CDATA[# Edit apache ports file to listen on additional ports
vim /etc/apache/ports.conf
# It should look like the following:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
#NameVirtualHost *:80
Listen 80
Listen 81
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="22c8f4e8-6fd0-4fb2-8156-f785e11604b4"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:structured-macro><h2>Configure Apache Virtual Host</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="4b051ac2-1171-4e9e-8f75-61e030dd30fc"><ac:plain-text-body><![CDATA[
Copy all files from working node (e.g. halb1) /etc/apache2/sites-available/
Remove default-ssl
Ensure default has correct site restrictions for server-status
]] ></ac:plain-text-body></ac:structured-macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d7cc412b-1132-46e1-9312-ec1680ed7d23"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:structured-macro><h2>Install heartbeat and pacemaker</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d326df89-da94-43d2-a806-3cd3babefb07"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="3eaed0e4-715f-4789-af7e-c6a86487e4e3"><ac:plain-text-body><![CDATA[Copy working ha.cf file from another node (e.g. halb1), being sure to add your new node to the list. It should look something like this
sudo vim /etc/ha.d/ha.cf
autojoin any
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
node halb3
node halb4
crm respawn
]] ></ac:plain-text-body></ac:structured-macro><h2>Modify /etc/default/haproxy file</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="3ad77fdb-6c36-4bd4-87c7-fc2acbd89953"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="9ada7795-e7f4-4075-b8b7-4699cc611ed0"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:structured-macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Copy existing haproxy.cfg</strong></p><p>&nbsp;</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="435b39b6-ac58-441d-9105-cef6730dcad3"><ac:plain-text-body><![CDATA[Copy an existing /etc/haproxy/haproxy.cfg file from a working node to your new node.]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><strong>Restart heartbeat</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d060755b-3ee3-4b06-9687-f06abcbdb12a"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:structured-macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="cda45460-06ca-4701-852c-a5d324560804"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="ac43636c-2703-4a1f-9ce2-dd3e661bc3f2"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="43aea737-3b8e-4beb-ade0-1dd0f5676823"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="42f49261-82ef-45a2-b1ed-42da3809ec57"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="cabfc831-cb5d-4b47-ae71-9434b3ecd8b5"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Show running configuration</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="7a7b1ab2-d13b-4f97-a500-6b385a660272"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="716c695f-8560-43e2-bc32-2ede2c1af63d"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 10
version: 17
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-08-06 10:01:51.713
versionComment: Migration of unmigrated content due to installation of a new plugin
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
<property name="hibernateVersion">10</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23920647</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">31162848</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454022</id>
</element>
</collection>
<property name="version">17</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-08-06 10:01:51.713</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">27000873</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">27000876</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181914</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">29294677</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">29294678</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">29294681</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">29294682</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31064197</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31064200</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31064203</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669325</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346801</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">27361352</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346783</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585323</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">117407937</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 23887892
Fecha creación: 2011-08-05 07:47:21.000
<property name="body">h2. Install Apache
{code}
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
{code}
h2. Apache SSL
Get our wildcard certificate and private key.
{code}
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
{code}
h2. Configure Apache Virtual Host
{code}
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
{code}
h2. Install HAProxy
# http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid
{code}
sudo apt-get install haproxy
{code}
h2. Install heartbeat and pacemaker
{code}
sudo apt-get install heartbeat pacemaker
{code}
*Create ha.cf file (main heartbeat config file)*
{code}
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
{code}
*Create authkeys file for heartbeat*
The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.
{code}
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; \
dd if=/dev/urandom bs=512 count=1 | openssl md5 ) \
> /etc/ha.d/authkeys
chmod 0600 /etc/ha.d/authkeys
{code}
*Restart heartbeat*
{code}
sudo /etc/init.d/heartbeat restart
{code}
*Verify that they are online*
{code}
sudo crm_mon -1 | grep Online
{code}
*Configure shared IPAddress*
This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
{code}
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
*Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
*Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
{code}
*Show running configuration*
{code}
sudo crm configure show
{code}
</property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-08 16:58:28.000
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887892</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23920657</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-08 16:58:28.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23887894
Fecha creación: 2011-08-09 08:18:56.000
<property name="body">{suu-info}
These are the steps you need to take to put a new service behind our HAProxy load balancers.
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.
{suu-info}
h2. Setup HAProxy
{suu-info}
* You will need to modify the same file on both load balancer nodes.
* Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.
* You should also know the front-facing ipaddress that your service will be using for this step.
{suu-info}
*Edit {{/etc/haproxy/haproxy.cfg}} (on both nodes)*
You will be adding a new server farm. Here is an example farm.
{code}
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.24:8080 maxconn 1 check
{code}
(!) The listen port must be unique, so if 8000 and 8001 are taken, use 8002
*Restart haproxy*
{code}
sudo /etc/init.d/haproxy restart
{code}
{suu-tip}
At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
http://halb1.suu.edu:8001
http://halb2.suu.edu:8001
{suu-tip}
h2. Setup Apache
{suu-info}
* The same configuration will go on both load balander nodes. We will make the changes on one server and replicate them to the other server using Mercurial.
* You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.
{suu-info}
# Create a new virtual host configuration
{code}
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
{code}
# Modify yourservice-ssl
{code}
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
{code}
# Enable your new virtual host
{code}
sudo a2ensite yourservice-ssl
{code}
# Reload apache
{code}
sudo /etc/init.d/apache2 reload
{code}
# Now we need to get the same config on the other load balancer node:
{code}
# First commit the virtual host file on the first node
cd /etc/apache2/sites-available
sudo hg add yourservice-ssl
sudo hg commit -m "New virtual host config file."
sudo hg push
# Now we can go grab that on the other server
ssh halb2.suu.edu
cd /etc/apache2/sites-available
sudo hg pull
sudo hg update
sudo a2ensite yourservice-ssl
sudo /etc/init.d/apache2 reload
{code}
h2. Setup your front-facing ipaddress
{suu-info}
* This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.
* What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker
{suu-info}
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
# *Setup ipaddress resource*
{code}
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 40s:20s
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Show running configuration*
{code}
sudo crm configure show
{code}
{suu-tip}
At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.
{suu-tip}</property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-10 12:41:46.000
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887894</id>
<property name="hibernateVersion">2</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23920659</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-10 12:41:46.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23887909
Fecha creación: 2011-08-09 08:18:56.000
<property name="body">{suu-info}
These are the steps you need to take to put a new service behind our HAProxy load balancers.
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.
{suu-info}
h2. Setup HAProxy
{suu-info}
* You will need to modify the same file on both load balancer nodes.
* Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.
* You should also know the front-facing ipaddress that your service will be using for this step.
{suu-info}
*Edit {{/etc/haproxy/haproxy.cfg}} (on both nodes)*
You will be adding a new server farm. Here is an example farm.
{code}
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.24:8080 maxconn 1 check
{code}
(!) The listen port must be unique, so if 8000 and 8001 are taken, use 8002
*Restart haproxy*
{code}
sudo /etc/init.d/haproxy restart
{code}
*Commit your changes*
{code}
cd /etc/haproxy/
sudo hg commit -m "New server config."
{code}
{suu-tip}
At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
http://halb1.suu.edu:8001
http://halb2.suu.edu:8001
{suu-tip}
h2. Setup Apache
{suu-info}
* The same configuration will go on both load balander nodes, however, they are not exactly the same. IP addresses will be different.
* You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.
{suu-info}
# Create a new virtual host configuration
{code}
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
{code}
# Modify yourservice-ssl
{code}
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
{code}
# Enable your new virtual host
{code}
sudo a2ensite yourservice-ssl
{code}
# Reload apache
{code}
sudo /etc/init.d/apache2 reload
{code}
# Commit your changes
{code}
cd /etc/apache2/sites-available/
sudo hg add yourservice-ssl
sudo hg commit -m "New virtual host config file."
{code}
# Now do the same thing on the other load balancer node, but make sure the IP addresses for the *{{ProxyPass}}* and *{{ProxyPassReverse}}* are set to the IP address of that node.
h2. Setup your front-facing ipaddress
{suu-info}
* This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.
* What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker
{suu-info}
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
# *Setup ipaddress resource*
{code}
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 40s:20s
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Show running configuration*
{code}
sudo crm configure show
{code}
{suu-tip}
At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.
{suu-tip}</property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-11 13:52:29.000
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887909</id>
<property name="hibernateVersion">2</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23920673</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-11 13:52:29.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23887939
Fecha creación: 2011-08-09 08:18:56.000
<property name="body">{suu-info}
These are the steps you need to take to put a new service behind our HAProxy load balancers.
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.
{suu-info}
h2. Setup HAProxy
{suu-info}
* You will need to modify the same file on both load balancer nodes.
* Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.
* You should also know the front-facing ipaddress that your service will be using for this step.
{suu-info}
*Edit {{/etc/haproxy/haproxy.cfg}} (on both nodes)*
You will be adding a new server farm. Here is an example farm.
{code}
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.25:8080 maxconn 1 check
{code}
(!) The listen port must be unique, so if 8000 and 8001 are taken, use 8002
*Restart haproxy*
{code}
sudo /etc/init.d/haproxy restart
{code}
*Commit your changes*
{code}
cd /etc/haproxy/
sudo hg commit -m "New server config."
{code}
{suu-tip}
At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
http://halb1.suu.edu:8001
http://halb2.suu.edu:8001
{suu-tip}
h2. Setup Apache
{suu-info}
* The same configuration will go on both load balander nodes, however, they are not exactly the same. IP addresses will be different.
* You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.
{suu-info}
# Create a new virtual host configuration
{code}
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
{code}
# Modify yourservice-ssl
{code}
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
{code}
# Enable your new virtual host
{code}
sudo a2ensite yourservice-ssl
{code}
# Reload apache
{code}
sudo /etc/init.d/apache2 reload
{code}
# Commit your changes
{code}
cd /etc/apache2/sites-available/
sudo hg add yourservice-ssl
sudo hg commit -m "New virtual host config file."
{code}
# Now do the same thing on the other load balancer node, but make sure the IP addresses for the *{{ProxyPass}}* and *{{ProxyPassReverse}}* are set to the IP address of that node.
h2. Setup your front-facing ipaddress
{suu-info}
* This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.
* What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker
{suu-info}
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
# *Setup ipaddress resource*
{code}
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 40s:20s
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Show running configuration*
{code}
sudo crm configure show
{code}
{suu-tip}
At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.
{suu-tip}</property>
hibernateVersion: 2
version: 6
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-08-18 14:39:37.000
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887939</id>
<property name="hibernateVersion">2</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23920699</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-08-18 14:39:37.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 23888007
Fecha creación: 2011-09-13 10:22:20.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>Documentation for managing a firewall on an Ubuntu box.</p></ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<p>One of the simplest ways to manage a firewall on Ubuntu is to use the command <strong><code>ufw</code></strong>. It stands for &quot;uncomplicated firewall&quot; and it is installed by default. The firewall is not running by default though.</p>
<h2>Initial Setup</h2>
<p><strong>Set default policy to deny</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="5d24a6d8-898f-4352-859b-169b551bd847"><ac:plain-text-body><![CDATA[
sudo ufw default deny
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Turn on the firewall</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="c282e371-0262-4fed-a7f5-6f071da5bc7b"><ac:plain-text-body><![CDATA[
sudo ufw enable
]] ></ac:plain-text-body></ac:structured-macro>
<h2>Some sample rules</h2>
<p><strong>Allow a specific IP address on any port.</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d6e8c6b5-66e2-4767-a3bd-0de29e20072e"><ac:plain-text-body><![CDATA[
sudo ufw allow from 134.250.4.188
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Allow a subnet range to a specific port</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="7ebe3701-13eb-4671-98f5-a9dce23ec231"><ac:plain-text-body><![CDATA[
# This allows ssh access from the VPN subnet.
sudo ufw allow from 134.250.236.0/24 to any port 22
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Block a specific IP</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="61c5b54b-ff47-49eb-8fb5-62d1fa0164b3"><ac:plain-text-body><![CDATA[
sudo ufw deny 134.250.4.77
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 7
version: 6
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-09-13 10:23:21.000
versionComment: Migration of unmigrated content due to installation of a new plugin
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23888007</id>
<property name="hibernateVersion">7</property>
<property name="title">Ubuntu Firewall - UFW</property>
<property name="lowerTitle">ubuntu firewall - ufw</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23920765</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454052</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-09-13 10:22:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-09-13 10:23:21.000</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181950</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">23888009</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585334</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669212</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">117407976</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 23888009
Fecha creación: 2011-09-13 10:22:20.000
<property name="body">{suu-info}
Documentation for managing a firewall on an Ubuntu box.
{suu-info}
h2. Overview
One of the simplest ways to manage a firewall on Ubuntu is to use the command *{{ufw}}*. It stands for "uncomplicated firewall" and it is installed by default. The firewall is not running by default though.
h2. Initial Setup
*Set default policy to deny*
{code}
sudo ufw default deny
{code}
*Turn on the firewall*
{code}
sudo ufw enable
{code}
h2. Some sample rules
*Allow a specific IP address on any port.
{code}
sudo ufw allow from 134.250.4.188
{code}
*Allow a subnet range to a specific port*
{code}
# This allows ssh access from the VPN subnet.
sudo ufw allow from 134.250.236.0/24 to any port 22
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-09-13 10:22:20.000
originalVersion: 23888007
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">23888009</id>
<property name="hibernateVersion">1</property>
<property name="title">Ubuntu Firewall - UFW</property>
<property name="lowerTitle">ubuntu firewall - ufw</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">23920767</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-09-13 10:22:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-09-13 10:22:20.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23888007</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346626
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h4. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 755 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V5.5.2 on Ubuntu 9.04 Server 64-bit
Note: These instructions are based on the report "TSM-Client unter Debian/etch einrichten" at "https://wiki.gw.dg.de/index.php/TSM:debian"
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
cd /tmp
wget [http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu9_amd64.deb]
dpkg-deb \-x ia32-libs_20090808ubuntu9_amd64.deb ia32-libs
sudo cp ia32-libs/usr/lib32/libstdc++.so.5.0.7 /usr/lib32/
cd /usr/lib32
sudo ln \-s libstdc\++.so.5.0.7 libstdc+\+.so.5
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
11) Run the "Error loading shared libraries" fix located above; run the "English message repository not found" fix as well
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 44
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-02-11 12:23:11.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346626</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379394</id>
</element>
</collection>
<property name="version">44</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-02-11 12:23:11.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346628
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h4. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V6.6.2 on Ubuntu 10.04 Server 64-bit
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9)
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 45
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-09-20 14:38:22.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346628</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379396</id>
</element>
</collection>
<property name="version">45</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-09-20 14:38:22.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346783
Fecha creación: 2011-08-11 09:05:40.000
<property name="body">h2. Install Apache
{code}
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
{code}
h2. Apache SSL
Get our wildcard certificate and private key.
{code}
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
{code}
h2. Configure Apache Virtual Host
{code}
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
{code}
h2. Install HAProxy
# http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid
{code}
sudo apt-get install haproxy
{code}
h2. Install heartbeat and pacemaker
{code}
sudo apt-get install heartbeat pacemaker
{code}
*Create ha.cf file (main heartbeat config file)*
{code}
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
{code}
*Create authkeys file for heartbeat*
The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.
{code}
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; \
dd if=/dev/urandom bs=512 count=1 | openssl md5 ) \
> /etc/ha.d/authkeys
chmod 0600 /etc/ha.d/authkeys
{code}
*Restart heartbeat*
{code}
sudo /etc/init.d/heartbeat restart
{code}
*Verify that they are online*
{code}
sudo crm_mon -1 | grep Online
{code}
*Configure shared IPAddress*
This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
{code}
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
*Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
*Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
{code}
*Show running configuration*
{code}
sudo crm configure show
{code} </property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-11 09:05:40.000
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346783</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379544</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-11 09:05:40.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346801
Fecha creación: 2011-08-11 09:05:40.000
<property name="body">h2. Install Apache
{code}
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
{code}
h2. Apache SSL
Get our wildcard certificate and private key.
{code}
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
{code}
h2. Configure Apache Virtual Host
{code}
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
{code}
h2. Install HAProxy
# http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid
{code}
sudo apt-get install haproxy
{code}
h2. Install heartbeat and pacemaker
{code}
sudo apt-get install heartbeat pacemaker
{code}
*Create ha.cf file (main heartbeat config file)*
{code}
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
{code}
h2. Modify /etc/default/haproxy file
{code}
ENABLED=1
{code}
*Create authkeys file for heartbeat* (original node only)
The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.
{code}
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; \
dd if=/dev/urandom bs=512 count=1 | openssl md5 ) \
> /etc/ha.d/authkeys
chmod 0600 /etc/ha.d/authkeys
{code}
If this is an addtional node, simply copy the authkeys from the original server to your new node
*Restart heartbeat*
{code}
sudo /etc/init.d/heartbeat restart
{code}
*Verify that they are online*
{code}
sudo crm_mon -1 | grep Online
{code}
*Configure shared IPAddress*
This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
{code}
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
*Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
*Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
{code}
*Show running configuration*
{code}
sudo crm configure show
{code} </property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-10-31 11:26:33.000
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346801</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379561</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-10-31 11:26:33.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346828
Fecha creación: 2010-05-18 10:41:08.000
<property name="body">Similar to Windows Software Update Services, apt-mirror allows us to store a local copy of the Ubuntu updates repository so our machines don't all have to go out to the internet for updates. &nbsp;Not only does this reduce our bandwidth usage, but updates are delivered extremely quickly over local wire. &nbsp;Here is an example of an /etc/apt/sources.list file from an Ubuntu 10.04 LTS 32-bit server install, pointed at our local repository on sherpa.suu.edu:
{code}
deb http://sherpa.suu.edu/ubuntu/ lucid main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://sherpa.suu.edu/ubuntu/ lucid-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://sherpa.suu.edu/ubuntu/ lucid universe
deb http://sherpa.suu.edu/ubuntu/ lucid-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://sherpa.suu.edu/ubuntu/ lucid multiverse
deb http://sherpa.suu.edu/ubuntu/ lucid-updates multiverse
## Uncomment the following line to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://sherpa.suu.edu/ubuntupartner lucid partner
## Security Updates
deb http://sherpa.suu.edu/updates lucid-security main restricted
deb http://sherpa.suu.edu/updates lucid-security universe
deb http://sherpa.suu.edu/updates lucid-security multiverse
{code}
NOTE: We do not currently mirror the deb-src (sources) files, since we rarely if ever compile our packages from source. Adding these sources to every subsection listed here would more than double the required space to store them. Your original sources.list file may or may not reference the source repositories. If it does, you should remove the lines from your file, or at least comment them out. If you need them, the only solution at this time is to leave them pointed at the original ubuntu location.
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-05-18 10:41:08.000
originalVersion: 17858700
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346828</id>
<property name="hibernateVersion">1</property>
<property name="title">Ubuntu local updates repository (example sources.list)</property>
<property name="lowerTitle">ubuntu local updates repository (example sources.list)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379588</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-05-18 10:41:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-05-18 10:41:08.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858700</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346864
Fecha creación: 2011-11-14 08:27:51.000
<property name="body"><h1>Resizing Logical Volumes</h1>
<p>This is a continuation of my earlier post. Here I will explain how to resize an existing logical volume. Logical volumes may be resized dynamically while preserving the data on the volume. Here is how:</p>
<ol>
<li>Reducing a logical volume.</li>
<li>Reduce the filesystem residing on the logical volume.</li>
<li>Reduce the logical volume.</li>
</ol>
<p>For different file systems,it is achieved differently.</p>
<p>For ext2 filesystem<br />
If you are using LVM 1, then both the above steps could be acomplished by executing a single utility called e2fsadm.</p>
<ol>
<li>umount /data</li>
<li>e2fsadm -L -1G /dev/my_vol_grp/my_logical_vol</li>
<li>mount /data<br />
The above command first reduces the filesystem in the 'my_logical_vol'by 1 GB and then reduces themy_logical_vol itself by the same amount.<br />
If you are using LVM 2 - more recent linux distributions like Fedora use LVM 2 - then you do not have the'e2fsadm' utility. So you have to first reduce the filesystem using 'resize2fs' and then reduce the logical volume using 'lvreduce'.</li>
<li>umount /data</li>
<li>resize2fs /dev/my_vol_grp/my_logical_vol 1G</li>
<li>lvreduce -L 1G /dev/my_vol_grp/my_logical_vol</li>
<li>mount /data<br />
In the above case, I have reduced my file</li>
<li>Grow a Logical Volume<br />
The steps for growing a logical volume are the exact opposite of those for shrinking the logical volume.</li>
<li>Then resize the filesystem to the new size of your logical volume.</li>
</ol>
</property>
hibernateVersion: 4
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-11-14 08:37:53.000
versionComment: Migrated to Confluence 4.0
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346864</id>
<property name="hibernateVersion">4</property>
<property name="title">Logical volume resize</property>
<property name="lowerTitle">logical volume resize</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379622</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454037</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-11-14 08:27:51.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-11-14 08:37:53.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346866</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182314</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 24346866
Fecha creación: 2011-11-14 08:27:51.000
<property name="body">[|http://linuxhelp.blogspot.com/]
* [Book Reviews|http://linuxhelp.blogspot.com/2006/06/book-reviews-linux-programming-web.html]
* [OS Reviews|http://linuxhelp.blogspot.com/2006/06/operating-system-reviews.html]
* [Ubuntu|http://linuxhelp.blogspot.com/2008/09/ubuntu-articles.html]
* [Contact Me|http://linuxhelp.blogspot.com/p/contact.html]
{color:#666666}April 23, 2005{color}
h1. [Resizing Logical Volumes|http://linuxhelp.blogspot.com/2005/04/resizing-logical-volumes.html]
{color:#222222}T{color}{color:#222222}his is a continuation of my earlier post&nbsp;{color}[Creating Logical Volumes in Linux|http://linuxhelp.blogspot.com/2005/04/creating-lvm-in-linux.html]{color:#222222}&nbsp;. Here I will explain how to resize an existing logical volume. Logical volumes may be resized dynamically while preserving the data on the volume. Here is how:{color}
{color:#000099}Reducing a logical volume{color}
# {color:#222222}Reduce the filesystem residing on the logical volume.{color}
# {color:#222222}Reduce the logical volume.{color}
{color:#222222}For different file&nbsp;{color}{color:#009900 !important}systems{color}{color:#009900 !important}&nbsp;{color}{color:#222222}, it is achieved differently.{color}
{color:#222222}{*}For&nbsp;*{color}{color:#222222}{*}ext2{*}{color}{color:#222222}*&nbsp;file&nbsp;system{*}{color}
{color:#222222}If you are using LVM 1, then both the above steps could be acomplished by executing a single utility called e2fsadm.{color}# umount /data
# e2fsadm -L -1G /dev/my_vol_grp/my_logical_vol
# mount /data
{color:#222222}The above command first reduces the filesystem in the '{color}{color:#222222}my_logical_vol{color}{color:#222222}'&nbsp;{color}{color:#222222}{*}by{*}{color}{color:#222222}&nbsp;1 GB and then reduces the&nbsp;{color}{color:#222222}my_logical_vol{color}{color:#222222}&nbsp;itself by the same amount.{color}
{color:#222222}If you are using LVM 2 - more recent linux distributions like Fedora use LVM 2 - then you do not have the{color}{color:#222222}'e2fsadm{color}{color:#222222}' utility. So you have to first reduce the filesystem using '{color}{color:#222222}{*}resize2fs{*}{color}{color:#222222}' and then reduce the logical volume using '{color}{color:#222222}{*}lvreduce{*}{color}{color:#222222}'.{color}# umount /data
# resize2fs /dev/my_vol_grp/my_logical_vol 1G
# lvreduce -L 1G /dev/my_vol_grp/my_logical_vol
# mount /data
{color:#222222}In the above case, I have reduced my file&nbsp;{color}{color:#009900 !important}system{color}{color:#009900 !important}&nbsp;{color}{color:#222222}&nbsp;"{color}{color:#222222}{*}to{*}{color}{color:#222222}" 1 GB size ...{color}
{color:#ff0000}Note:{color}{color:#222222}&nbsp;I didn't use the minus ({color}{color:#000099}*\-*{color}{color:#222222}) sign while using resize2fs&nbsp;{color}
{color:#222222}... And then used the&nbsp;{color}{color:#222222}{*}lvreduce{*}{color}{color:#222222}&nbsp;command to reduce the logical volume "{color}{color:#222222}{*}to{*}{color}{color:#222222}" 1 GB. If I want to reduce the logical volume "{color}{color:#222222}{*}by{*}{color}{color:#222222}" 1 GB, then I give the same command but with "{color}{color:#222222}*\-L{*}{color}{color:#222222}&nbsp;{color}{color:#990000}*\-*{color}{color:#222222}{*}1G{*}{color}{color:#222222}" instead of "-L 1G".{color}
{color:#000000}{*}Reiserfs file&nbsp;system{*}{color}
{color:#222222}If you have a reiserfs filesystem, then the commands are a bit different than ext2(3).{color}# umount /data
# resize_reiserfs -s -1G /dev/my_vol_grp/my_logical_vol
# lvreduce -L -1G /dev/my_vol_grp/my_logical_vol
# mount -t reiserfs /data
{color:#000000}{*}XFS and JFS filesystems{*}{color}
{color:#222222}As of now, there is no way to shrink these filesystems residing on logical volumes.{color}
{color:#000099}Grow a Logical Volume{color}
{color:#222222}The steps for growing a logical volume are the exact opposite of those for shrinking the logical volume.{color}
# {color:#009900 !important}Enlarge{color}{color:#009900 !important}&nbsp;{color}{color:#222222}&nbsp;the logical volume first.{color}
# {color:#222222}Then resize the filesystem to the new size of your logical volume.{color}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-11-14 08:27:51.000
originalVersion: 24346864
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346866</id>
<property name="hibernateVersion">1</property>
<property name="title">Logical volume resize</property>
<property name="lowerTitle">logical volume resize</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379624</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-11-14 08:27:51.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-11-14 08:27:51.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346864</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346873
Fecha creación: 2011-11-16 08:49:08.000
<property name="body"><h2>Check the location of all resources</h2><ac:structured-macro ac:macro-id="3a7c9343-fa76-4e01-be17-015858e5d649" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo crm_mon -1
]] ></ac:plain-text-body></ac:structured-macro><h2>Migrate a resource to another node</h2><ac:structured-macro ac:macro-id="828c387a-a76e-41bf-b5a3-e9507b3c66db" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:structured-macro><h2>Move a resource back to its normal location</h2><ac:structured-macro ac:macro-id="b74004d9-c22a-4f99-9f09-4205a1900a46" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:structured-macro><h2>List resources</h2><ac:structured-macro ac:macro-id="53ebdb5e-9bdb-4286-8681-5ae942e508da" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[crm_resource --list]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Stop a running resource and everything that depends on it (in order to delete it)</h2><ac:structured-macro ac:macro-id="24bd40fe-f568-42aa-829f-3307c71647f5" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ crm_resource --resource <resource_name_from_list> --set-parameter target-role --meta --parameter-value Stopped]] ></ac:plain-text-body></ac:structured-macro><h2>Check status of sticky table (must have haproxy.stat entry in haproxy.config)</h2><ac:structured-macro ac:macro-id="a99556bb-9cef-4f20-8e84-31d58a6deca7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[(Returned IP address removed for security)
#socat readline /var/run/haproxy.stat
prompt
>set timeout cli 1d
>show table
# table: banner-prod-inb, type: ip, size:512000, used:152
>show table banner-prod-inb
# table: banner-prod-inb, type: ip, size:512000, used:1
0x130df64: key=134.250.x.x use=0 exp=23192485 server_id=1
## TO CLEAR STICKY ENTRIES
>clear table banner-inb-prod]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Delete a resource</h2><ac:structured-macro ac:macro-id="0bbfcb02-2951-4caf-9954-fc3e20bc159f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[crm_resource -D -r my_first_ip -t primitive]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 5
version: 11
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-09-17 23:09:12.471
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
<property name="hibernateVersion">5</property>
<property name="title">Routine Cluster Tasks (haproxy)</property>
<property name="lowerTitle">routine cluster tasks (haproxy)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379630</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454023</id>
</element>
</collection>
<property name="version">11</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-09-17 23:09:12.471</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">33259524</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">32702718</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">27000878</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392067</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392135</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584996</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392160</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346875</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">32702719</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182370</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 24346875
Fecha creación: 2011-11-16 08:49:08.000
<property name="body">
h2. Check the location of a resource
{code}
sudo crm_resource -W -r api_ip
{code}
h2. Migrate a resource to another node
{code}
sudo crm_resource -M -r api_ip -H halb2
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-11-16 08:49:08.000
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346875</id>
<property name="hibernateVersion">1</property>
<property name="title">Routine Cluster Tasks</property>
<property name="lowerTitle">routine cluster tasks</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379632</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-11-16 08:49:08.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346975
Fecha creación: 2011-12-05 15:14:15.000
<property name="body"><h3>/etc/httpd/conf.d/ssl.conf</h3>
<ac:structured-macro ac:macro-id="98b5afdd-9c9f-4ea0-bca5-ef42db46274b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# SSL Cipher Suite:
# List the ciphers that the client is permitted to negotiate.
# See the mod_ssl documentation for a complete list.
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
# Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate. If
# the certificate is encrypted, then you will be prompted for a
# pass phrase. Note that a kill -HUP will prompt again. A new
# certificate can be generated using the genkey(1) command.
SSLCertificateFile /etc/pki/tls/certs/suucert.pem
# Server Private Key:
# If the key is not combined with the certificate, use this
# directive to point at the key file. Keep in mind that if
# you've both a RSA and a DSA private key you can configure
# both in parallel (to also allow the use of DSA ciphers, etc.)
SSLCertificateKeyFile /etc/pki/tls/private/suuprivate.key
# Server Certificate Chain:
# Point SSLCertificateChainFile at a file containing the
# concatenation of PEM encoded CA certificates which form the
# certificate chain for the server certificate. Alternatively
# the referenced file can be the same as SSLCertificateFile
# when the CA certificates are directly appended to the server
# certificate for convinience.
#SSLCertificateChainFile /etc/pki/tls/certs/
# Certificate Authority (CA):
# Set the CA certificate verification path where to find CA
# certificates for client authentication or alternatively one
# huge file containing all of them (file must be PEM encoded)
SSLCACertificateFile /etc/pki/tls/certs/RapidRoot.pem
]] ></ac:plain-text-body></ac:structured-macro>
<h3>/etc/httpd/conf/httpd.conf</h3>
<p>Be sure the following Trace directive exists in your global config section</p>
<ac:structured-macro ac:macro-id="772eb1c9-11b7-4f53-83f2-2a823f563b4b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#
TraceEnable off
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 3
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-12-05 15:40:54.000
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346975</id>
<property name="hibernateVersion">3</property>
<property name="title">Apache2 configuration example</property>
<property name="lowerTitle">apache2 configuration example</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379724</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454026</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-12-05 15:14:15.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-12-05 15:40:54.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346977</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346976</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346979</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585005</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346981</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182434</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 24346976
Fecha creación: 2011-12-05 15:14:15.000
<property name="body">h3. /etc/httpd/conf.d/ssl.conf
<code>
# SSL Cipher Suite:
# List the ciphers that the client is permitted to negotiate.
# See the mod_ssl documentation for a complete list.
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
# Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate. If
# the certificate is encrypted, then you will be prompted for a
# pass phrase. Note that a kill -HUP will prompt again. A new
# certificate can be generated using the genkey(1) command.
SSLCertificateFile /etc/pki/tls/certs/suucert.pem
# Server Private Key:
# If the key is not combined with the certificate, use this
# directive to point at the key file. Keep in mind that if
# you've both a RSA and a DSA private key you can configure
# both in parallel (to also allow the use of DSA ciphers, etc.)
SSLCertificateKeyFile /etc/pki/tls/private/suuprivate.key
# Server Certificate Chain:
# Point SSLCertificateChainFile at a file containing the
# concatenation of PEM encoded CA certificates which form the
# certificate chain for the server certificate. Alternatively
# the referenced file can be the same as SSLCertificateFile
# when the CA certificates are directly appended to the server
# certificate for convinience.
#SSLCertificateChainFile /etc/pki/tls/certs/
# Certificate Authority (CA):
# Set the CA certificate verification path where to find CA
# certificates for client authentication or alternatively one
# huge file containing all of them (file must be PEM encoded)
SSLCACertificateFile /etc/pki/tls/certs/RapidRoot.pem
<code></property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-12-05 15:14:15.000
originalVersion: 24346975
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346976</id>
<property name="hibernateVersion">2</property>
<property name="title">Apache2 SSL configuration example</property>
<property name="lowerTitle">apache2 ssl configuration example</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379725</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-12-05 15:14:15.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-12-05 15:14:15.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346975</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346977
Fecha creación: 2011-12-05 15:14:15.000
<property name="body">h3. /etc/httpd/conf.d/ssl.conf
<code>
# SSL Cipher Suite:
# List the ciphers that the client is permitted to negotiate.
# See the mod_ssl documentation for a complete list.
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
# Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate. If
# the certificate is encrypted, then you will be prompted for a
# pass phrase. Note that a kill -HUP will prompt again. A new
# certificate can be generated using the genkey(1) command.
SSLCertificateFile /etc/pki/tls/certs/suucert.pem
# Server Private Key:
# If the key is not combined with the certificate, use this
# directive to point at the key file. Keep in mind that if
# you've both a RSA and a DSA private key you can configure
# both in parallel (to also allow the use of DSA ciphers, etc.)
SSLCertificateKeyFile /etc/pki/tls/private/suuprivate.key
# Server Certificate Chain:
# Point SSLCertificateChainFile at a file containing the
# concatenation of PEM encoded CA certificates which form the
# certificate chain for the server certificate. Alternatively
# the referenced file can be the same as SSLCertificateFile
# when the CA certificates are directly appended to the server
# certificate for convinience.
#SSLCertificateChainFile /etc/pki/tls/certs/
# Certificate Authority (CA):
# Set the CA certificate verification path where to find CA
# certificates for client authentication or alternatively one
# huge file containing all of them (file must be PEM encoded)
SSLCACertificateFile /etc/pki/tls/certs/RapidRoot.pem
<code></property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-12-05 15:17:43.000
originalVersion: 24346975
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346977</id>
<property name="hibernateVersion">2</property>
<property name="title">Apache2 SSL configuration example</property>
<property name="lowerTitle">apache2 ssl configuration example</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379726</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-12-05 15:14:15.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-12-05 15:17:43.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346975</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346979
Fecha creación: 2011-12-05 15:14:15.000
<property name="body">h3. /etc/httpd/conf.d/ssl.conf
<code>
# SSL Cipher Suite:
# List the ciphers that the client is permitted to negotiate.
# See the mod_ssl documentation for a complete list.
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
# Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate. If
# the certificate is encrypted, then you will be prompted for a
# pass phrase. Note that a kill -HUP will prompt again. A new
# certificate can be generated using the genkey(1) command.
SSLCertificateFile /etc/pki/tls/certs/suucert.pem
# Server Private Key:
# If the key is not combined with the certificate, use this
# directive to point at the key file. Keep in mind that if
# you've both a RSA and a DSA private key you can configure
# both in parallel (to also allow the use of DSA ciphers, etc.)
SSLCertificateKeyFile /etc/pki/tls/private/suuprivate.key
# Server Certificate Chain:
# Point SSLCertificateChainFile at a file containing the
# concatenation of PEM encoded CA certificates which form the
# certificate chain for the server certificate. Alternatively
# the referenced file can be the same as SSLCertificateFile
# when the CA certificates are directly appended to the server
# certificate for convinience.
#SSLCertificateChainFile /etc/pki/tls/certs/
# Certificate Authority (CA):
# Set the CA certificate verification path where to find CA
# certificates for client authentication or alternatively one
# huge file containing all of them (file must be PEM encoded)
SSLCACertificateFile /etc/pki/tls/certs/RapidRoot.pem
<code></property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-12-05 15:19:29.000
originalVersion: 24346975
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346979</id>
<property name="hibernateVersion">2</property>
<property name="title">Apache2 configuration example</property>
<property name="lowerTitle">apache2 configuration example</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379728</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-12-05 15:14:15.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-12-05 15:19:29.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346975</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24346981
Fecha creación: 2011-12-05 15:14:15.000
<property name="body">h3. /etc/httpd/conf.d/ssl.conf
<code>
# SSL Cipher Suite:
# List the ciphers that the client is permitted to negotiate.
# See the mod_ssl documentation for a complete list.
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
# Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate. If
# the certificate is encrypted, then you will be prompted for a
# pass phrase. Note that a kill -HUP will prompt again. A new
# certificate can be generated using the genkey(1) command.
SSLCertificateFile /etc/pki/tls/certs/suucert.pem
# Server Private Key:
# If the key is not combined with the certificate, use this
# directive to point at the key file. Keep in mind that if
# you've both a RSA and a DSA private key you can configure
# both in parallel (to also allow the use of DSA ciphers, etc.)
SSLCertificateKeyFile /etc/pki/tls/private/suuprivate.key
# Server Certificate Chain:
# Point SSLCertificateChainFile at a file containing the
# concatenation of PEM encoded CA certificates which form the
# certificate chain for the server certificate. Alternatively
# the referenced file can be the same as SSLCertificateFile
# when the CA certificates are directly appended to the server
# certificate for convinience.
#SSLCertificateChainFile /etc/pki/tls/certs/
# Certificate Authority (CA):
# Set the CA certificate verification path where to find CA
# certificates for client authentication or alternatively one
# huge file containing all of them (file must be PEM encoded)
SSLCACertificateFile /etc/pki/tls/certs/RapidRoot.pem
<code>
h3. /etc/httpd/conf/httpd.conf
Be sure the following Trace directive exists in your global config section
<code>
### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#
TraceEnable off
<code></property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-12-05 15:39:45.000
originalVersion: 24346975
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346981</id>
<property name="hibernateVersion">2</property>
<property name="title">Apache2 configuration example</property>
<property name="lowerTitle">apache2 configuration example</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24379730</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-12-05 15:14:15.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-12-05 15:39:45.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346975</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805545
Fecha creación: 2010-03-22 08:10:10.000
<property name="body">{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename MARKETPLACE
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /usr/local/touchnet/.../*
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /var
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/etc
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
{code}</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-03-22 08:17:27.000
originalVersion: 17138072
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805545</id>
<property name="hibernateVersion">2</property>
<property name="title">Example Tivoli dsm.sys file for Ubuntu Servers</property>
<property name="lowerTitle">example tivoli dsm.sys file for ubuntu servers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838313</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-03-22 08:10:10.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-03-22 08:17:27.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138072</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805547
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h4. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V6.6.2 on Ubuntu 10.04 Server 64-bit
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs gawk
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 46
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-09-20 14:46:27.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805547</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838315</id>
</element>
</collection>
<property name="version">46</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-09-20 14:46:27.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805572
Fecha creación: 2012-02-10 10:37:11.000
<property name="body"><h3>Oracle production database servers (Red Hat or CentOS)</h3><ac:structured-macro ac:macro-id="854b9aa8-b0d6-45c1-8465-17e4fef39f7b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude dsmsched.log
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude /.../tmp/*/.../*
exclude /tmp/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /var/cache
exclude.dir /usr/src
]] ></ac:plain-text-body></ac:structured-macro><h3>Ubuntu Server</h3><ac:structured-macro ac:macro-id="872e7246-a5f7-453f-84d5-71bcc57332de" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 5
version: 14
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-06-04 13:23:03.527
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
<property name="hibernateVersion">5</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838339</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454113</id>
</element>
</collection>
<property name="version">14</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-06-04 13:23:03.527</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476597</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476596</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585026</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805601</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805605</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805574</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805575</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805606</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805604</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">30474272</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805576</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805577</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182613</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 24805574
Fecha creación: 2012-02-10 10:37:11.000
<property name="body" />
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-10 10:37:11.000
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805574</id>
<property name="hibernateVersion">1</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838341</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-10 10:37:11.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805575
Fecha creación: 2012-02-10 10:37:11.000
<property name="body">h3. database servers
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename MAHOGANY
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/share
{code}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-10 10:39:21.000
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805575</id>
<property name="hibernateVersion">1</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838342</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-10 10:39:21.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805576
Fecha creación: 2012-02-10 10:37:11.000
<property name="body">h3. database servers
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename MAHOGANY
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/share
exclude.dir /usr/src
{code}</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-10 10:40:25.000
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805576</id>
<property name="hibernateVersion">1</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838343</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-10 10:40:25.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805577
Fecha creación: 2012-02-10 10:37:11.000
<property name="body">h3. database servers
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename ADIRONDACK
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /lib
exclude.dir /lib64
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/include
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/lib
exclude.dir /usr/lib64
exclude.dir /var/cache
exclude.dir /usr/src
{code}</property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-10 15:39:51.000
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805577</id>
<property name="hibernateVersion">1</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838344</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-10 15:39:51.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805601
Fecha creación: 2012-02-10 10:37:11.000
<property name="body">h3. Oracle database servers
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename ADIRONDACK
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /lib
exclude.dir /lib64
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/include
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/lib
exclude.dir /usr/lib64
exclude.dir /var/cache
exclude.dir /usr/src
{code}</property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-10 15:40:05.000
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805601</id>
<property name="hibernateVersion">2</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838368</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-10 15:40:05.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805604
Fecha creación: 2012-02-10 10:37:11.000
<property name="body">h3. Oracle database servers
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /lib
exclude.dir /lib64
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/include
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/lib
exclude.dir /usr/lib64
exclude.dir /var/cache
exclude.dir /usr/src
{code}</property>
hibernateVersion: 2
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-14 09:37:53.000
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805604</id>
<property name="hibernateVersion">2</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838371</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-14 09:37:53.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805605
Fecha creación: 2012-02-10 10:37:11.000
<property name="body">h3. Oracle database servers
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude dsmsched.log
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude.dir /lib
exclude.dir /lib64
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/include
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/lib
exclude.dir /usr/lib64
exclude.dir /var/cache
exclude.dir /usr/src
exclude.dir /var/spool/cups/
{code}</property>
hibernateVersion: 2
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-14 09:52:58.000
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805605</id>
<property name="hibernateVersion">2</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838372</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-14 09:52:58.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 24805606
Fecha creación: 2012-02-10 10:37:11.000
<property name="body">h3. Oracle production database servers
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude dsmsched.log
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude.dir /lib
exclude.dir /lib64
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/include
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/lib
exclude.dir /usr/lib64
exclude.dir /var/cache
exclude.dir /usr/src
exclude.dir /var/spool/cups/
{code}</property>
hibernateVersion: 2
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-14 09:58:40.000
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805606</id>
<property name="hibernateVersion">2</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">24838373</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-14 09:58:40.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 25395236
Fecha creación: 2012-03-05 15:17:39.000
<property name="body"><h3>How do I tell what is running on a given port?</h3><ac:structured-macro ac:macro-id="8d20c2c1-c5f9-43f0-afbf-805f43845588" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[lsof -i :<port number>
i.e. lsof -i :5353
]] ></ac:plain-text-body></ac:structured-macro><h3>How do I remove unused kernels on Ubuntu Server?</h3><ac:structured-macro ac:macro-id="5f42a257-991c-421a-b094-20fb32e3bdc6" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#apt-get autoremove
#apt-get autoclean
#cd /boot
#uname -r (make note of response; this is the running kernel)
2.6.32-40-server
Use regex to remove everything *except* the running kernel. In my case, the following command did it:
#apt-get remove linux-image-2.6.32-3[0-9]-server
This removed all kernels from version 30-39, leaving just the running one (40) intact. This freed up 767MB of space.
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 3
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-18 13:44:32.693
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">25395236</id>
<property name="hibernateVersion">3</property>
<property name="title">Linux commands cheat sheet</property>
<property name="lowerTitle">linux commands cheat sheet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">25428002</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-03-05 15:17:39.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-18 13:44:32.693</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">27000867</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585030</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182665</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 25395257
Fecha creación: 2011-08-05 07:47:21.000
<property name="body">{suu-info}
This is the root page for our HAProxy documentation.
{suu-info}
{suu-tip}
*How to check on the status of things*
* *Check status of HAProxy*
** http://halb1.suu.edu:8001
** http://halb2.suu.edu:8001
* *Check the status of the nodes*
** SSH into one of the nodes
{code}
ssh halb1.suu.edu
sudo crm_mon --one-shot -V | grep Online
# The output will look something like this:
Online: [ halb1 halb2 ]
{code}
{suu-tip}
h2. Overview
* We have two load balancer nodes running in a cluster. They are active/active and will automatically take over for the other if one goes down.
* The load balance cluster has multiple shared IP addresses. The shared IP addresses are the user-facing IPs and that is where firewall rules are applied for user access.
Current production setup example: (note we have more stuff behind our load balancers, but this demonstrates the basic idea.)
{code}
shared IP=12.141
^^^^^^^^
12.142 12.143 5.24 5.25
-------+------------+-----------+-----+---
| | | |
+--+--+ +--+--+ +-+-+ +-+-+
| LB1 | | LB2 | | A | | B |
+-----+ +-----+ +---+ +---+
haproxy haproxy web servers
heartbeat heartbeat
pacemaker pacemaker
{code}
*LB1* = halb1.suu.edu
*LB2* = halb2.suu.edu
*A* = api1.suu.edu
*B* = api2.suu.edu
*shared IP* = api.suu.edu
</property>
hibernateVersion: 2
version: 6
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-08-11 13:39:42.000
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">25395257</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">25428020</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-08-11 13:39:42.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181705
Fecha creación: 2011-04-04 15:52:05.000
<property name="body">h4. /<tomcat_home>/conf/Catalina/localhost/manager.xml
{code}
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0?
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Context configuration file for the Tomcat Manager Web App
$Id: manager.xml 562814 2007-08-05 03:52:04Z markt $
-->
<Context docBase="${catalina.home}/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,134.250.4.*"/>
</Context>
{code}
h4. /<tomcat_home>/conf/server.xml
{code}
<?xml version='1.0' encoding='utf-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" at this level.
Documentation at /docs/config/server.html
-->
<Server port="8005" shutdown="SHUTDOWN">
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />
<!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<!-- Global JNDI resources
Documentation at /docs/jndi-resources-howto.html
-->
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" Note: A "Service" is not itself a "Container",
so you may not define subcomponents such as "Valves" at this level.
Documentation at /docs/config/service.html
-->
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<!-- <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> -->
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- Define a SSL HTTP/1.1 Connector on port 8443
This connector uses the JSSE configuration, when using APR, the
connector should be using the OpenSSL style configuration
described in the APR documentation -->
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11Protocol"
ciphers="SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA"
SSLEnabled="true"
enableLookups="false"
disableUploadTimeout="true"
acceptCount="100"
maxThreads="200"
scheme="https"
secure="true"
clientAuth="false"
keystoreFile="/home/touchnet/ssl/keystore.wc"
keystorePass="<removedforwiki>"
sslProtocol="TLS"
/>
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host).
Documentation at /docs/config/engine.html -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
<!--For clustering, please take a look at documentation at:
/docs/cluster-howto.html (simple how to)
/docs/config/cluster.html (reference documentation) -->
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
<!-- The request dumper valve dumps useful debugging information about
the request and response data received and sent by Tomcat.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
-->
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase" digest="SHA" />
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
</Host>
</Engine>
</Service>
</Server>
{code}
h4. /<tomcat_home>/conf/logging.properties
{code}
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################
1catalina.org.apache.juli.FileHandler.level = WARNING
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.
2localhost.org.apache.juli.FileHandler.level = WARNING
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.
3manager.org.apache.juli.FileHandler.level = WARNING
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix = manager.
4host-manager.org.apache.juli.FileHandler.level = WARNING
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.FileHandler.prefix = host-manager.
java.util.logging.ConsoleHandler.level = WARNING
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler
# For example, set the com.xyz.foo logger to only log SEVERE
# messages:
#org.apache.catalina.startup.ContextConfig.level = WARNING
#org.apache.catalina.startup.HostConfig.level = WARNING
#org.apache.catalina.session.ManagerBase.level = WARNING
#org.apache.catalina.core.AprLifecycleListener.level=WARNING
{code}</property>
hibernateVersion: 1
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-08 09:54:34.000
originalVersion: 23068743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181705</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat configuration files - SUU Standard</property>
<property name="lowerTitle">tomcat configuration files - suu standard</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214473</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:52:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-08 09:54:34.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181706
Fecha creación: 2011-04-04 15:56:08.000
<property name="body">h4. Populate /etc/init.d/suu_tomcat
{code}
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=<tomcat_home_dir>
export TOMCAT_USER=<tomcat user>
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/suu_tomcat start|stop|restart"
;;
esac
exit 0
{code}
A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or \~.bashrc (user-specific).
h4. Set for automatic startup
Run the following as root (Ubuntu and Red Hat):
{code}
chmod 755 /etc/init.d/suu_tomcat
{code}
Next, run the following as root:
For Red Hat:
{code}
chkconfig --add suu_tomcat
chkconfig --level 345 suu_tomcat on
{code}
For Ubuntu:
{code}
update-rc.d suu_tomcat defaults
{code}
That's it - reboot and make sure it works.</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-04 16:01:33.000
originalVersion: 23068747
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181706</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat Startup Script</property>
<property name="lowerTitle">tomcat startup script</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214474</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:56:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-04 16:01:33.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068747</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181815
Fecha creación: 2008-03-05 16:56:14.000
<property name="body">{section}
{column:width=50%}
{info:title=Description}
Misc. Linux documentation. When we find something useful regarding Linux that we might use again, it should get documented here.
{info}
{livesearch:id=1|spaceKey=linux}
{column}
{column:width=50%}
{recently-updated}
{column}
{section}</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-06-25 10:34:44.000
originalVersion: 2883631
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181815</id>
<property name="hibernateVersion">1</property>
<property name="title">Home</property>
<property name="lowerTitle">home</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214583</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-05 16:56:14.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-06-25 10:34:44.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883631</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181816
Fecha creación: 2008-03-05 16:59:25.000
<property name="body">Sometimes, you have an ISO you've downloaded which you would like to access in linux, but don't want to go to the hassle of burning it. The following command will allow you to mount it and read from it just like a CD:
mount -o loop _filename_.iso /mnt/_yourdirectory_
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-05 16:59:25.000
originalVersion: 2883633
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181816</id>
<property name="hibernateVersion">1</property>
<property name="title">Mount an ISO like a regular CDROM</property>
<property name="lowerTitle">mount an iso like a regular cdrom</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214584</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-05 16:59:25.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-05 16:59:25.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883633</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181834
Fecha creación: 2008-03-06 15:37:40.000
<property name="body">h2. First Step
h5. If IP is assigned by DHCP, make sure /etc/hosts file looks like this:
{code:title=/etc/hosts|borderStyle=solid}127.0.0.1 servername.suu.edu localhost.localdomain localhost servername
{code}
h5. If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):
{code:title=/etc/hosts|borderStyle=solid}127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
{code}
h2. Second Step
h5. If you need the change to happen immediately without a reboot, run the following command as root:
{code:borderStyle=solid}#hostname yourserver.suu.edu
{code}
h2. Third Step
h5. This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:
{code:borderStyle=solid}yourserver.suu.edu
{code}
h2. Fourth Step
h5. Edit the /etc/sysconfig/network file HOSTNAME line to read:
{code:title=/etc/sysconfig/network|borderStyle=solid}HOSTNAME=yourserver.suu.edu
{code}
h2. Fifth Step
h5. As root, run the following command:
{code:borderStyle=solid}#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
{code}
h2. Sixth Step
h5. Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file
{code}
DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet
{code}
h2. Finally, reboot.</property>
hibernateVersion: 1
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-05 08:04:19.000
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181834</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change host name and ip address</property>
<property name="lowerTitle">how to properly change host name and ip address</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214602</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-05 08:04:19.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181837
Fecha creación: 2008-03-07 08:28:19.000
<property name="body">h1. Remove unnecessary services
{code:borderStyle=solid}
chkconfig --del anacron
chkconfig --del autofs
chkconfig --del apmd
chkconfig --del atd
chkconfig --del gpm
chkconfig --del irda
chkconfig --del isdn
chkconfig --del netfs
chkconfig --del nfs
chkconfig --del nfslock
chkconfig --del nscd
chkconfig --del ntpd
chkconfig --del portmap
chkconfig --del sendmail
chkconfig --del smartd
chkconfig --del snmpd
chkconfig --del snmptrapd
chkconfig --del winbind
chkconfig --del ypbind
chkconfig --del avahi-daemon
chkconfig --del cups
chkconfig --del exim
chkconfig --del firstboot
chkconfig --del gpm
chkconfig --del fuse
chkconfig --del mdmonitor --handles software raid
cd /etc/xinetd.d/
rm -rf /etc/xinetd.d/chargen*
rm -rf /etc/xinetd.d/daytime*
rm -rf /etc/xinetd.d/echo*
rm -rf /etc/xinetd.d/rsync*
rm -rf /etc/xinetd.d/time*
{code}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-08-19 16:29:09.000
originalVersion: 2883660
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181837</id>
<property name="hibernateVersion">1</property>
<property name="title">Securing Linux</property>
<property name="lowerTitle">securing linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214605</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 08:28:19.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-08-19 16:29:09.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883660</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 26181841
Fecha creación: 2008-03-07 16:22:44.000
<property name="body">This document pertains to Redhat Enterprise Linux specifically, but may work for other distributions as well
h3. 1- Install VNC Server
#up2date vnc-server
h3. 2- Set it to start at boot
#chkconfig vncserver on
h3. 3- Set up servers for individual users
#vi /etc/sysconfig/vncservers
(insert the following lines into the file)
VNCSERVERS="1:usera 2:userb" (add as many users as desired)
VNCSERVERARGS[1]="-geometry 1280x1024" (set resolution you desire for user a)
VNCSERVERARGS[2]="-geometry 1024x768" (set resolution you desire for user b)
h3. 4- Initialize VNC params for each user
#vncpasswd usera (enter password)
#vncpasswd userb (enter password)
h3. 5- Restart services
#/etc/init.d/vncserver restart
h3. 6- Edit each user's X startup script for VNC
#vi /home/usera/.vnc/xstartup
(the file should look like the following for full gui capability; for slow connections, there are much 'slimmer' options; this doc assumes local LAN connectivity)
h4. # The file should look like this for a normal desktop:
{code:title=/home/username/.vnc/xstartup|borderStyle=solid}
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
The file should look like this if you have a slow connection:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &
{code}
h3. 7- Restart services again
#/etc/init.d/vncserver restart
h3. 8- Connect with client from remote desktop
using the free RealVNC client, simply enter the following into the hostname prompt:
your.server.edu:1 (the :1 denotes user 'a' in this case; substitute other numbers accordingly)</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2d0007
lastModificationDate: 2008-03-12 09:50:44.000
originalVersion: 2883664
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181841</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring VNC</property>
<property name="lowerTitle">configuring vnc</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214609</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:22:44.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2d0007</id>
</property>
<property name="lastModificationDate">2008-03-12 09:50:44.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883664</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181845
Fecha creación: 2008-03-07 16:31:29.000
<property name="body">h3. Ubuntu
Sometimes when modifying the xorg.conf file, you'll mess it up and not have a backup. Here's a command to restore the original as it was at install.
dpkg-reconfigure -phigh xserver-xorg</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-07 16:31:29.000
originalVersion: 2883674
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181845</id>
<property name="hibernateVersion">1</property>
<property name="title">Reconfigure X</property>
<property name="lowerTitle">reconfigure x</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214613</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:31:29.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-07 16:31:29.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883674</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181853
Fecha creación: 2011-06-03 16:52:26.000
<property name="body">h4. Current /etc/apt/mirror.list contents
{code}
############# config ##################
#
set base_path /home/itftp/APTMIRROR
#
# if you change the base path you must create the directories below with write privileges
#
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
set cleanscript $base_path/var/clean.sh
set defaultarch i386
set nthreads 10
set _tilde 0
#
############# end config ##############
# Main packages for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
# Updates for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
# Security updates
deb-i386 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu hardy-security universe
deb-i386 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security universe
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu lucid-security universe
deb-i386 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security universe
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu maverick-security universe
deb-i386 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security universe
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu natty-security universe
deb-i386 http://security.ubuntu.com/ubuntu natty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu natty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu natty-security multiverse
# Partner repo
deb-i386 http://archive.canonical.com/ubuntu hardy partner
deb-amd64 http://archive.canonical.com/ubuntu hardy partner
deb-i386 http://archive.canonical.com/ubuntu jaunty partner
deb-amd64 http://archive.canonical.com/ubuntu jaunty partner
deb-i386 http://archive.canonical.com/ubuntu lucid partner
deb-amd64 http://archive.canonical.com/ubuntu lucid partner
deb-i386 http://archive.canonical.com/ubuntu maverick partner
deb-amd64 http://archive.canonical.com/ubuntu maverick partner
deb-i386 http://archive.canonical.com/ubuntu natty partner
deb-amd64 http://archive.canonical.com/ubuntu natty partner
# Extras (added as of Maverick)
deb-i386 http://extras.ubuntu.com/ubuntu maverick main
deb-amd64 http://extras.ubuntu.com/ubuntu maverick main
deb-i386 http://extras.ubuntu.com/ubuntu natty main
deb-amd64 http://extras.ubuntu.com/ubuntu natty main
# Cleanup scripts
clean http://archive.ubuntu.com
clean http://security.ubuntu.com
clean http://archive.canonical.com
{code}
h4. Current soft links in /var/www directory
{code}
root@sherpa:/var/www# ls -aslh
total 12K
4.0K drwxr-xr-x 2 root root 4.0K 2011-06-03 16:44 .
4.0K drwxr-xr-x 15 root root 4.0K 2011-06-02 16:58 ..
0 lrwxrwxrwx 1 root root 53 2011-06-03 16:44 extras -> /home/itftp/APTMIRROR/mirror/extras.ubuntu.com/ubuntu
4.0K -rw-r--r-- 1 root root 177 2011-06-02 16:58 index.html
0 lrwxrwxrwx 1 root root 54 2011-06-03 09:46 ubuntu -> /home/itftp/APTMIRROR/mirror/archive.ubuntu.com/ubuntu
0 lrwxrwxrwx 1 root root 57 2011-06-03 09:46 ubuntupartner -> /home/itftp/APTMIRROR/mirror/archive.canonical.com/ubuntu
0 lrwxrwxrwx 1 root root 55 2011-06-03 09:46 updates -> /home/itftp/APTMIRROR/mirror/security.ubuntu.com/ubuntu
{code}
</property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-06-03 16:56:19.000
originalVersion: 23494876
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181853</id>
<property name="hibernateVersion">2</property>
<property name="title">APT-MIRROR configuration</property>
<property name="lowerTitle">apt-mirror configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214621</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-06-03 16:52:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-06-03 16:56:19.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23494876</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181855
Fecha creación: 2008-03-07 16:37:30.000
<property name="body">h3. Provided by Jeff Johnson:
No single tool, but here's what I do:
0) Make a copy of everything, just in case:
cd /var/lib
tar czvf /tmp/rpmdb.tar.gz rpm
1) Check /var/lib/rpm/Packages with db_verify.
The command is
db_verify /var/lib/rpm/Packages
If that fails, the fix is
cd /var/lib/rpm
mv Packages Packages-ORIG
db_dump Packages-ORIG | db_load Packages
At this point Packages should be OK.
2) Read all Package headers.
The command is
rpm -qa
If that "works", go to step 5), do "rpm --rebuilddb" and you're
done.
If that segfaults, go to 3).
if that hangs, then do
rm -f /var/lib/rpm/__db*
and try again.
3) You have a segfault on a header.
The first step is to get the segfaulting header instance.
Append "debug" to the Packages configuration by
echo "%_dbi_config_Packages %{_dbi_htconfig} lockdbfd debug" \
>> /etc/rpm/macros
Try "rpm -qa", lots of boring glop until segfault.
On the screen will be something like
...
Get Packages key (0x8216580,4) data (0x4014f008,155244) "#612" 47000000
rc
0kernel-enterprise-2.4.9-26beta.17
Get Packages key ((nil),0) data ((nil),0) "" deadbeef rc -30990
<segfault here>
The 2nd to last "Get Packages" line is what you want, the
bad header instance above is "612" in decimal. Note the
package name-version-release, you'll want to reinstall
that package somewhen.
4) Nuke the bad header.
I usually whip out my handy-dandy header instance deleter,
edit the bad record into the source, compile, run, and go back
to step 2).
The program is at
ftp://people.redhat.com/jbj/t38454.c
FWIW, the program is named after the bugzilla report that
caused me to write it.
Retrieve, and edit the bad header instances into
...
{code} int badrecs[] = {
--> EDIT --> 562, 566, 559, 561, 563, 560, 564,
-1
};
...
Compile with
cc -o t38454 t38454.c -ldb-3.2
Run as
t38454 {code}
Go back to step 2).
5) Clean up.
a) rpm --rebuilddb
b) rm -f /etc/rpm/macros
c) rm -rf /var/lib/rpmrebuild*
d) Reinstall the deleted package.</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-07 16:37:30.000
originalVersion: 2883680
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181855</id>
<property name="hibernateVersion">1</property>
<property name="title">Fix Corrupt RPM Database</property>
<property name="lowerTitle">fix corrupt rpm database</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214623</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:37:30.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-07 16:37:30.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883680</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181888
Fecha creación: 2011-08-05 07:47:21.000
<property name="body">{suu-info}
This is the root page for our HAProxy documentation.
{suu-info}
{suu-tip}
*How to check on the status of things*
* *Check status of HAProxy*
** http://halb1.suu.edu:8001
** http://halb2.suu.edu:8001
** http://halb3.suu.edu:8001
* *Check the status of the nodes*
** SSH into one of the nodes
{code}
ssh halb1.suu.edu
sudo crm_mon --one-shot -V | grep Online
# The output will look something like this:
Online: [ halb1 halb2 halb3 ]
{code}
{suu-tip}
h2. Overview
* We have three load balancer nodes running in a cluster. They are active/active and will automatically take over for the other if one goes down.
* The load balance cluster has multiple shared IP addresses. The shared IP addresses are the user-facing IPs and that is where firewall rules are applied for user access.
Current production setup example: (note we have more stuff behind our load balancers, but this demonstrates the basic idea.)
{code}
shared IP=12.141
^^^^^^^^
12.142 12.143 5.24 5.25
-------+------------+-----------+-----+---
| | | |
+--+--+ +--+--+ +-+-+ +-+-+
| LB1 | | LB2 | | A | | B |
+-----+ +-----+ +---+ +---+
haproxy haproxy web servers
heartbeat heartbeat
pacemaker pacemaker
{code}
*LB1* = halb1.suu.edu
*LB2* = halb2.suu.edu
*A* = api1.suu.edu
*B* = api2.suu.edu
*shared IP* = api.suu.edu
</property>
hibernateVersion: 1
version: 7
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2012-03-21 10:07:33.000
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181888</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214656</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2012-03-21 10:07:33.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181909
Fecha creación: 2011-08-09 08:18:56.000
<property name="body">{suu-info}
These are the steps you need to take to put a new service behind our HAProxy load balancers.
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.
{suu-info}
h2. Setup HAProxy
{suu-info}
* You will need to modify the same file on both load balancer nodes.
* Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.
* You should also know the front-facing ipaddress that your service will be using for this step.
{suu-info}
*Edit {{/etc/haproxy/haproxy.cfg}} (on both nodes)*
You will be adding a new server farm. Here is an example farm.
{code}
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.25:8080 maxconn 1 check
{code}
(!) The listen port must be unique, so if 8000 and 8001 are taken, use 8002
*Restart haproxy*
{code}
sudo /etc/init.d/haproxy restart
{code}
*Commit your changes*
{code}
cd /etc/haproxy/
sudo hg commit -m "New server config."
{code}
{suu-tip}
At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
http://halb1.suu.edu:8001
http://halb2.suu.edu:8001
{suu-tip}
h2. Setup Apache
{suu-info}
* The same configuration will go on both load balander nodes, however, they are not exactly the same. IP addresses will be different.
* You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.
{suu-info}
# Create a new virtual host configuration
{code}
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
{code}
# Modify yourservice-ssl
{code}
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
{code}
# Enable your new virtual host
{code}
sudo a2ensite yourservice-ssl
{code}
# Reload apache
{code}
sudo /etc/init.d/apache2 reload
{code}
# Commit your changes
{code}
cd /etc/apache2/sites-available/
sudo hg add yourservice-ssl
sudo hg commit -m "New virtual host config file."
{code}
# Now do the same thing on the other load balancer node, but make sure the IP addresses for the *{{ProxyPass}}* and *{{ProxyPassReverse}}* are set to the IP address of that node.
h2. Setup your front-facing ipaddress
{suu-info}
* This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.
* What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker
{suu-info}
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
# *Setup ipaddress resource*
{code}
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask=255.255.255.0 nic=eth0
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 40s:20s
crm(live)configure# commit
crm(live)configure# exit
{code}
# *Show running configuration*
{code}
sudo crm configure show
{code}
{suu-tip}
At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.
{suu-tip}</property>
hibernateVersion: 2
version: 7
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-08-30 09:01:40.000
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181909</id>
<property name="hibernateVersion">2</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214677</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-08-30 09:01:40.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181914
Fecha creación: 2011-08-11 09:05:40.000
<property name="body">h2. Install Apache
{code}
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
{code}
h2. Apache SSL
Get our wildcard certificate and private key.
{code}
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
{code}
h2. Configure Apache Virtual Host
{code}
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
{code}
h2. Install HAProxy
# http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid
{code}
sudo apt-get install haproxy
{code}
h2. Install heartbeat and pacemaker
{code}
sudo apt-get install heartbeat pacemaker
{code}
*Create ha.cf file (main heartbeat config file)*
{code}
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
{code}
h2. Modify /etc/default/haproxy file
{code}
ENABLED=1
{code}
*Create authkeys file for heartbeat* (original node only)
The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.
{code}
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; \
dd if=/dev/urandom bs=512 count=1 | openssl md5 ) \
> /etc/ha.d/authkeys
chmod 0600 /etc/ha.d/authkeys
{code}
If this is an addtional node, simply copy the authkeys from the original server to your new node
*Restart heartbeat*
{code}
sudo /etc/init.d/heartbeat restart
{code}
*Verify that they are online*
{code}
sudo crm_mon -1 | grep Online
{code}
*Configure shared IPAddress*
This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.
{suu-tip}
*Tip:*
The following commands only need to be run on one node. They will be replicated automatically to the second node.
*api_ip* - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu
*eth0" - the nic we want this ip to use.
{suu-tip}
{code}
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
{code}
*Set a preferred node for the ip resource*
This tells Pacemaker which node the resource ip should live on when both nodes are up.
{code}
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
{code}
*Setup Pacemaker monitoring*
{code}
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
{code}
*Show running configuration*
{code}
sudo crm configure show
{code} </property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-11-02 12:19:10.000
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181914</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214682</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-11-02 12:19:10.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26181950
Fecha creación: 2011-09-13 10:22:20.000
<property name="body">{suu-info}
Documentation for managing a firewall on an Ubuntu box.
{suu-info}
h2. Overview
One of the simplest ways to manage a firewall on Ubuntu is to use the command *{{ufw}}*. It stands for "uncomplicated firewall" and it is installed by default. The firewall is not running by default though.
h2. Initial Setup
*Set default policy to deny*
{code}
sudo ufw default deny
{code}
*Turn on the firewall*
{code}
sudo ufw enable
{code}
h2. Some sample rules
*Allow a specific IP address on any port.*
{code}
sudo ufw allow from 134.250.4.188
{code}
*Allow a subnet range to a specific port*
{code}
# This allows ssh access from the VPN subnet.
sudo ufw allow from 134.250.236.0/24 to any port 22
{code}
*Block a specific IP*
{code}
sudo ufw deny 134.250.4.77
{code}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-09-13 10:23:17.000
originalVersion: 23888007
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26181950</id>
<property name="hibernateVersion">1</property>
<property name="title">Ubuntu Firewall - UFW</property>
<property name="lowerTitle">ubuntu firewall - ufw</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214718</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-09-13 10:22:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-09-13 10:23:17.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23888007</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182083
Fecha creación: 2010-03-22 08:10:10.000
<property name="body">{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename MARKETPLACE
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
{code}</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-08 09:58:35.000
originalVersion: 17138072
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182083</id>
<property name="hibernateVersion">1</property>
<property name="title">Example Tivoli dsm.sys file for Ubuntu Servers</property>
<property name="lowerTitle">example tivoli dsm.sys file for ubuntu servers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214851</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-03-22 08:10:10.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-08 09:58:35.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138072</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182087
Fecha creación: 2010-03-22 09:31:53.000
<property name="body">{code}
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename BIRCHINB
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /u02/.../*
include /u03/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
{code}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-02-03 10:46:57.000
originalVersion: 17138077
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182087</id>
<property name="hibernateVersion">1</property>
<property name="title">Example Tivoli dsm.sys file for Red Hat Servers</property>
<property name="lowerTitle">example tivoli dsm.sys file for red hat servers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214855</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-03-22 09:31:53.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-02-03 10:46:57.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138077</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182149
Fecha creación: 2010-04-19 10:21:41.000
<property name="body">1. Download the client zip file from sherpa or the Oracle site
2. Install the following additional packages:
{code}
#apt-get install libaio1 gawk
{code}
Additionally, be sure you are running the sun java software, not the default packaged version with Ubuntu. You will also make a link for awk to gawk.
{code}
#apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin sun-java6-jdk
#cd /etc/alternatives
#ln -s /usr/lib/jvm/java-6-sun/jre/bin/java java
#cd /usr/bin
#ln -s /usr/bin/gawk awk
{code}
3. Next, we will initiate the installer to see where it fails and what settings we need to add to our /etc/sysctl.conf file. Initiate the installer as follows, and then CANCEL as soon as you have the values you need:
{code}
./runinstaller -ignoreSysPrereqs
{code}
You will reach a point where it checks for needed settings, and gives you a list of everything that does not meet requirements. The settings you are interested in are listed in the next step. Make a note of the values the installer recommends.
4. Add the following entries to your /etc/sysctl.conf file: (change values to match what is recommended for your machine - some will be the same, some won't)
{code}
# Oracle client stuff
kernel.shmmax = 536870912
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
{code}
Next, run the following to make the settings active:
{code}
#sysctl -p
{code}
5. Now you can run the installer and ignore the warnings completely (there is a checkbox to do this)
{code}
./runinstaller -ignoreSysPrereqs
{code}
6. Once it is finished, make a note of where you installed it to, and make the following entries in your .bashrc file:
{code}
#Oracle stuff
export ORACLE_HOME=/<path_to_where_you_installed>/product/11.2.0/client_1
export PATH=$PATH:$ORACLE_HOME/bin
export TNS_ADMIN=$ORACLE_HOME/network/admin
{code}
Next, run the following to make it active (NOT as root - run as your user):
{code}
$ . .bashrc
{code}
If that is difficult to read, it is:
{code}
<dot><space><dot><bashrc>
{code}
7. Lastly, copy the contents of a known good tnsnames.ora file, and paste it into the following file:
{code}
$ORACLE_HOME/network/admin/tnsnames.ora
{code}
8. Run tnsping against any of the tnsnames entries, and make sure you get a response.</property>
hibernateVersion: 1
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-19 10:35:19.000
originalVersion: 17858594
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182149</id>
<property name="hibernateVersion">1</property>
<property name="title">Oracle full administrative client 11gR2 on Ubuntu Karmic Koala (9.10) 64-bit</property>
<property name="lowerTitle">oracle full administrative client 11gr2 on ubuntu karmic koala (9.10) 64-bit</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214917</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-19 10:21:41.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-19 10:35:19.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858594</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182153
Fecha creación: 2010-04-20 09:06:58.000
<property name="body">1. Add the following line to the bottom of your /etc/apt/sources.list file:
{code}
deb http://download.virtualbox.org/virtualbox/debian] karmic non-free
{code}
2. Import the key:
{code}
sudo wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -
{code}
Refresh the repositories:
{code}
sudo apt-get update
{code}
3. Install the latest virtualbox package (as of this writing it is virtualbox-3.1) by selecting it in Synaptic, or running this command from a terminal:
{code}
$ sudo apt-get install virtualbox-3.1
{code}
4. Add yourself to the vboxusers group:
{code}
$ sudo gpasswd -a YOURUSERNAME vboxusers
{code}
5. Find the devgid for the vboxusers group:
{code}
$ grep vboxusers /etc/group
{code}
It will return something like:
{code}
vboxusers:x:121:username
{code}
Add this line to the bottom of /etc/fstab, replacing the devgid number with your devgid:
{code}
none /proc/bus/usb usbfs devgid=125,devmode=664 0 0
{code}
After you reboot you should now have USB support in VirtualBox.
Last tested on Ubuntu 9.10 Karmic Koala</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-20 09:08:39.000
originalVersion: 17858608
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182153</id>
<property name="hibernateVersion">1</property>
<property name="title">Virtualbox and USB device support in Ubuntu Karmic Koala</property>
<property name="lowerTitle">virtualbox and usb device support in ubuntu karmic koala</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214921</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-20 09:06:58.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-20 09:08:39.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858608</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182188
Fecha creación: 2010-05-18 10:41:08.000
<property name="body">Similar to Windows Software Update Services, apt-mirror allows us to store a local copy of the Ubuntu updates repository so our machines don't all have to go out to the internet for updates. &nbsp;Not only does this reduce our bandwidth usage, but updates are delivered extremely quickly over local wire. &nbsp;Here is an example of an /etc/apt/sources.list file from an Ubuntu 10.04 LTS 32-bit server install, pointed at our local repository on sherpa.suu.edu:
{code}
deb http://sherpa.suu.edu/ubuntu/ lucid main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://sherpa.suu.edu/ubuntu/ lucid-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://sherpa.suu.edu/ubuntu/ lucid universe
deb http://sherpa.suu.edu/ubuntu/ lucid-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://sherpa.suu.edu/ubuntu/ lucid multiverse
deb http://sherpa.suu.edu/ubuntu/ lucid-updates multiverse
## Uncomment the following line to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://sherpa.suu.edu/ubuntupartner lucid partner
## Security Updates
deb http://sherpa.suu.edu/updates lucid-security main restricted
deb http://sherpa.suu.edu/updates lucid-security universe
deb http://sherpa.suu.edu/updates lucid-security multiverse
{code}
NOTE: We do not currently mirror the deb-src (sources) files, since we rarely if ever compile our packages from source. Adding these sources to every subsection listed here would more than double the required space to store them. Your original sources.list file may or may not reference the source repositories. If it does, you should remove the lines from your file, or at least comment them out. If you need them, the only solution at this time is to leave them pointed at the original ubuntu location.
For reference, here is a standard unmodified sources.list from an 11.10 box:
{code}
deb http://us.archive.ubuntu.com/ubuntu/ oneiric main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric main restricted
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates main restricted
deb http://us.archive.ubuntu.com/ubuntu/ oneiric universe
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric universe
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates universe
deb http://us.archive.ubuntu.com/ubuntu/ oneiric multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric multiverse
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse
# deb http://us.archive.ubuntu.com/ubuntu/ maverick-backports main restricted universe multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ maverick-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu oneiric partner
deb-src http://archive.canonical.com/ubuntu oneiric partner
deb http://extras.ubuntu.com/ubuntu oneiric main
deb-src http://extras.ubuntu.com/ubuntu oneiric main
deb http://security.ubuntu.com/ubuntu oneiric-security main restricted
deb-src http://security.ubuntu.com/ubuntu oneiric-security main restricted
deb http://security.ubuntu.com/ubuntu oneiric-security universe
deb-src http://security.ubuntu.com/ubuntu oneiric-security universe
deb http://security.ubuntu.com/ubuntu oneiric-security multiverse
deb-src http://security.ubuntu.com/ubuntu oneiric-security multiverse
{code}
</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-11-07 10:37:35.000
originalVersion: 17858700
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182188</id>
<property name="hibernateVersion">1</property>
<property name="title">Ubuntu local updates repository (example sources.list)</property>
<property name="lowerTitle">ubuntu local updates repository (example sources.list)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26214956</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-05-18 10:41:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-11-07 10:37:35.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858700</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182244
Fecha creación: 2008-11-11 08:11:18.000
<property name="body">{attachments:old=true}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-11-12 08:10:57.000
originalVersion: 8749165
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182244</id>
<property name="hibernateVersion">1</property>
<property name="title">vi Cheat Sheet</property>
<property name="lowerTitle">vi cheat sheet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215012</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-11-11 08:11:18.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-11-12 08:10:57.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749165</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182314
Fecha creación: 2011-11-14 08:27:51.000
<property name="body">h1. Resizing Logical Volumes
This is a continuation of my earlier post. Here I will explain how to resize an existing logical volume. Logical volumes may be resized dynamically while preserving the data on the volume. Here is how:
# Reducing a logical volume.
# Reduce the filesystem residing on the logical volume.
# Reduce the logical volume.
For different file systems,it is achieved differently.
For ext2 filesystem
If you are using LVM 1, then both the above steps could be acomplished by executing a single utility called e2fsadm.
# umount /data
# e2fsadm \-L \-1G /dev/my_vol_grp/my_logical_vol
# mount /data
The above command first reduces the filesystem in the 'my_logical_vol'by 1 GB and then reduces themy_logical_vol itself by the same amount.
If you are using LVM 2 - more recent linux distributions like Fedora use LVM 2 - then you do not have the'e2fsadm' utility. So you have to first reduce the filesystem using 'resize2fs' and then reduce the logical volume using 'lvreduce'.
# umount /data
# resize2fs /dev/my_vol_grp/my_logical_vol 1G
# lvreduce \-L 1G /dev/my_vol_grp/my_logical_vol
# mount /data
In the above case, I have reduced my file
# Grow a Logical Volume
The steps for growing a logical volume are the exact opposite of those for shrinking the logical volume.
#
# Then resize the filesystem to the new size of your logical volume.</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-11-14 08:37:52.000
originalVersion: 24346864
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182314</id>
<property name="hibernateVersion">1</property>
<property name="title">Logical volume resize</property>
<property name="lowerTitle">logical volume resize</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215082</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-11-14 08:27:51.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-11-14 08:37:52.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346864</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182324
Fecha creación: 2008-04-10 10:56:11.000
<property name="body">h4. The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory
h2. Example contents of dsm.opt file
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
{code}
h2. Configuring Automatic Startup
Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:
{code}
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
{code}
h4. Next, execute the following commands:
{code}
FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
{code}
h4. Finally, you must start the daemon manually and enter the password; this is only required once\- it will remember it going forward
At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:
{code}
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
{code}
h2. Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.
h4. Error loading shared libraries
If you encounter the following message while starting dsmc
{code}
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
{code}
you need to add the path to the dsm binary directory to the file _/etc/ld.so.conf_
{code}
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
{code}
&nbsp;and then reimport the shared objects using the command
{code}
ldconfig
{code}
h4. English message repository not found
If you get the error message
{code}
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
{code}
you need to create a symbolic link in _/opt/tivoli/tsm/client/ba/bin_ with
{code}
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
{code}
h2. Ubuntu Server Notes
{code}
Installing TSM Client V6.6.2 on Ubuntu 10.04 Server 64-bit
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* libstdc++5 gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
{code}</property>
hibernateVersion: 1
version: 47
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-08 10:36:50.000
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182324</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215092</id>
</element>
</collection>
<property name="version">47</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-08 10:36:50.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182332
Fecha creación: 2008-12-02 09:24:48.000
<property name="body">h3. Create a file called suu_startup in the /etc/init.d directory. Be sure to replace <server> with your server's name, i.e. oak, aspen, etc. Save file and proceed to next steps.
{code}
#!/bin/bash
#
# chkconfig: 35 98 01
# description: Starts Oracle Application Server software
#
export SOURCE=/u01/app/oracle/scripts
export USER=root
touch /var/lock/subsys/suu_startup
case "$1" in
start)
echo -n "Starting suu_startup"
if [ -f "$SOURCE/start<server>.ksh" ]; then
$SOURCE/start<server>.ksh #> /tmp/start<server>.log 2>&1
fi
;;
stop)
echo -n "Stopping suu_startup"
if [ -f "$SOURCE/stop<server>.ksh" ]; then
$SOURCE/stop<server>.ksh #> /tmp/stop<server>.log 2>&1
fi
;;
*)
printf "Usage: `basename $0` {start | stop}\n"
exit 1
;;
esac
exit 0
{code}
h4. Step 2 - chmod 755 suu_startup
h4. Step 3 - chkconfig --add suu_startup
h4. Step 4 - chkconfig --level 345 suu_startup on</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-12-02 09:43:26.000
originalVersion: 8749480
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182332</id>
<property name="hibernateVersion">1</property>
<property name="title">Oracle Database Startup and Shutdown Script (Template)</property>
<property name="lowerTitle">oracle database startup and shutdown script (template)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215100</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-12-02 09:24:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-12-02 09:43:26.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749480</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182336
Fecha creación: 2008-04-10 11:13:24.000
<property name="body">CUPS Doc
To install cups and hplip on a new server, here is the procedure:
CUPS:
1\- ensure you have the following packages installed:
gcc, libjpeg, libjpeg-devel, libpng, libpng-devel, libtiff, libtiff-devel, zlib, zlib-devel,dbus-devel,php-devel,pyqt,pyqt-devel,xsane,net-snmp-devel
2\- Download the latest stable source from www.cups.org (1.3.6 as of this writing)
3\- Compile the source as follows:
{code}
rpmbuild -ta cups-version-source.tar.gz --without dbus
{code}
This will produce several compiled rpms in the /usr/src/redhat/RPMS/i386 directory.
The only ones you want are cups, cups-libs, cups-debuginfo, cups-devel,cups-lpd,cups-php
Do an rpm \-Uvh on all these packages.
HPLIP:
{code}
#tar -zxvf hplip-****.gz
#cd hplip-****
#(as banjobs, not ROOT) ./configure --enable-network-build --disable-dbus-build --disable-pp-build --disable-fax-build --disable-gui-build --disable-scan-build --enable-doc-build --enable-foomatic-ppd-install --disable-foomatic-drv-install --with-hpppddir=/usr/share/cups/model/HP --disable-hpijs-only-build --prefix=/usr
#(as banjobs, not ROOT) make
#(as ROOT) make install
#/etc/init.d/hplip restart
{code}
The following command creates a print queue called tranb on Solaris
lpadmin \-p tranb \-v/dev/null \-m netstandard \-o dest=134.250.51.248:3002 \-T PS \-I postscript \-o protocol=tcp
\--landscape using LPR
lpr \-o landscape \-o cpi=15 \-o lpi=12 \-o cpi=16 \-Pormond SHRTRTC_876.lis
Cups Options:
Jobs can also have options associated with them such as media size, number of copies, and priority.
CUPS supports collections of printers known as classes. Jobs sent to a class are forwarded to the first available printer in the class.
Filters allow a user or application to print many types of files without extra effort. Print jobs sent to a CUPS server are filtered before sending them to a printer.
Some filters convert job files to different formats that the printer can understand. Others perform page selection and ordering tasks.
CUPS provides filters for printing many types of image files, HP-GL/2 files, PDF files, and text files.
CUPS also supplies PostScript and image file Raster Image Processor ("RIP") filters that convert PostScript or image files into bitmaps that can be sent to a raster printer.
CUPS also provides implicit classes, which are collections of printers and/or classes with the same name. This allows you to setup multiple servers pointing to the same physical network printer,
for example, so that you aren't relying on a single system for printing. Because this also works with printer classes, you can setup multiple servers and printers
and never worry about a single point of failure unless all of the printers and servers go down\!
General Options
The following options apply when printing all types of files.
Selecting the Media Size, Type, and Source
The \-o media=xyz option sets the media size, type, and/or source:
lp \-o media=Letter filename ENTER
lp \-o media=Letter,MultiPurpose filename ENTER
lpr \-o media=Letter,Transparency filename ENTER
lpr \-o media=Letter,MultiPurpose,Transparency filename ENTER
The available media sizes, types, and sources depend on the printer, but most support the following options (case is not significant):
* Letter - US Letter (8.5x11 inches, or 216x279mm)
* Legal - US Legal (8.5x14 inches, or 216x356mm)
* A4 - ISO A4 (8.27x11.69 inches, or 210x297mm)
* COM10 - US #10 Envelope (9.5x4.125 inches, or 241x105mm)
* DL - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)
* Transparency - Transparency media type or source
* Upper - Upper paper tray
* Lower - Lower paper tray
* MultiPurpose - Multi-purpose paper tray
* LargeCapacity - Large capacity paper tray
The actual options supported are defined in the printer's PPD file in the PageSize, InputSlot, and MediaType options.
Setting the Orientation
The \-o landscape option will rotate the page 90 degrees to print in landscape orientation:
lp \-o landscape filename ENTER
lpr \-o landscape filename ENTER
Printing On Both Sides of the Paper
The \-o sides=two-sided-short-edge and \-o sides=two-sided-long-edge options will enable duplexing on the printer, if the printer supports it. The \-o sides=two-sided-short-edge option is suitable for landscape pages, while the \-o sides=two-sided-long-edge option is suitable for portrait pages:
lp \-o sides=two-sided-short-edge filename ENTER
lp \-o sides=two-sided-long-edge filename ENTER
lpr \-o sides=two-sided-long-edge filename ENTER
The default is to print single-sided:
lp \-o sides=one-sided filename ENTER
lpr \-o sides=one-sided filename ENTER
Banner Options
The following options apply when printing all types of files.
Selecting the Banner Page(s)
The \-o jobsheets=start,end option sets the banner page(s) to use for a job:
lp \-o job-sheets=none filename ENTER
lp \-o job-sheets=standard filename ENTER
lpr \-o job-sheets=classified,classified filename ENTER
If only one banner file is specified, it will be printed before the files in the job. If a second banner file is specified, it is printed after the files in the job.
The available banner pages depend on the local system configuration; CUPS includes the following banner files:
* none - Do not produce a banner page.
* classified - A banner page with a "classified" label at the top and bottom.
* confidential - A banner page with a "confidential" label at the top and bottom.
* secret - A banner page with a "secret" label at the top and bottom.
* standard - A banner page with no label at the top and bottom.
* topsecret - A banner page with a "top secret" label at the top and bottom.
* unclassified - A banner page with an "unclassified" label at the top and bottom.
Document Options
The following options apply when printing all types of files.
Selecting a Range of Pages
The \-o page-ranges=pages option selects a range of pages for printing:
lp \-o page-ranges=1 filename ENTER
lp \-o page-ranges=1-4 filename ENTER
lp \-o page-ranges=1-4,7,9-12 filename ENTER
lpr \-o page-ranges=1-4,7,9-12 filename ENTER
As shown above, the pages value can be a single page, a range of pages, or a collection of page numbers and ranges separated by commas. The pages will always be printed in ascending order, regardless of the order of the pages in the page-ranges option.
The default is to print all pages.
Selecting Even or Odd Pages
Use the \-o page-set=set option to select the even or odd pages:
lp \-o page-set=odd filename ENTER
lp \-o page-set=even filename ENTER
lpr \-o page-set=even filename ENTER
The default is to print all pages.
Setting the Output Order
The the \-o outputorder=order option to set the output order of all pages:
lp \-o outputorder=normal filename ENTER
lp \-o outputorder=reverse filename ENTER
lpr \-o outputorder=reverse filename ENTER
N-Up Printing
The \-o number-up=value option selects N-Up printing. N-Up printing places multiple document pages on a single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is 1-Up:
lp \-o number-up=1 filename ENTER
lp \-o number-up=2 filename ENTER
lp \-o number-up=4 filename ENTER
lpr \-o number-up=16 filename ENTER
The \-o page-border=value option chooses the border to draw around each page:
* \-o page-border=double; draw two hairline borders around each page
* \-o page-border=double-thick; draw two 1pt borders around each page
* \-o page-border=none; do not draw a border (default)
* \-o page-border=single; draw one hairline border around each page
* \-o page-border=single-thick; draw one 1pt border around each page
The \-o number-up-layout=value option chooses the layout of the pages on each output page:
* \-o number-up-layout=btlr; Bottom to top, left to right
* \-o number-up-layout=btrl; Bottom to top, right to left
* \-o number-up-layout=lrbt; Left to right, bottom to top
* \-o number-up-layout=lrtb; Left to right, top to bottom (default)
* \-o number-up-layout=rlbt; Right to left, bottom to top
* \-o number-up-layout=rltb; Right to left, top to bottom
* \-o number-up-layout=tblr; Top to bottom, left to right
* \-o number-up-layout=tbrl; Top to bottom, right to left
Mirroring Prints
You can mirror a print using the \-o mirror option:
lp \-o mirror filename ENTER
lpr \-o mirror filename ENTER
This is useful for printing mirrored pages on transfer paper, for T shirts, mugs, etc.
Setting the Brightness
You can control the overall brightness of the printed output using the \-o brightness=percent option:
lp \-o brightness=120 filename ENTER
lpr \-o brightness=120 filename ENTER
Values greater than 100 will lighten the print, while values less than 100 will darken it.
Setting the Gamma Correction
You can control the overall gamma correction of the printed output using the \-o gamma=value option:
lp \-o gamma=1700 filename ENTER
lpr \-o gamma=1700 filename ENTER
Values greater than 1000 will lighten the print, while values less than 1000 will darken it. The default gamma is 1000.
Text Options
The following options apply when printing text files.
Setting the Number of Characters Per Inch
The \-o cpi=value option sets the number of characters per inch:
lp \-o cpi=10 filename ENTER
lp \-o cpi=12 filename ENTER
lpr \-o cpi=17 filename ENTER
The default characters per inch is 10.
Setting the Number of Lines Per Inch
The \-o lpi=value option sets the number of lines per inch:
lp \-o lpi=6 filename ENTER
lpr \-o lpi=8 filename ENTER
The default lines per inch is 6.
Setting the Number of Columns
The \-o columns=value option sets the number of text columns:
lp \-o columns=2 filename ENTER
lpr \-o columns=3 filename ENTER
The default number of columns is 1.
Setting the Page Margins
Normally the page margins are set to the hard limits of the printer. Use the \-o page-left=value, \-o page-right=value , \-o page-top=value, and \-o page-bottom=value options to adjust the page margins:
lp \-o page-left=value filename ENTER
lp \-o page-right=value filename ENTER
lp \-o page-top=value filename ENTER
lp \-o page-bottom=value filename ENTER
lpr \-o page-bottom=value filename ENTER
The value argument is the margin in points; each point is 1/72 inch or 0.35mm.
Pretty Printing
The \-o prettyprint option puts a header at the top of each page with the page number, job title (usually the filename), and the date. Also, C and C+\+ keywords are highlighted, and comment lines are italicized:
lp \-o prettyprint filename ENTER
lpr \-o prettyprint filename ENTER
Image Options
The following options apply when printing image files.
Positioning the Image
The \-o position=name option specifies the position of the image on the page:
* center - Center the image on the page (default)
* top - Print the image centered at the top of the page
* left - Print the image centered on the left of page
* right - Print the image centered on the right of the page
* top-left - Print the image at the top left corner of the page
* top-right - Print the image at the top right corner of the page
* bottom - Print the image centered at the bottom of the page
* bottom-left - Print the image at the bottom left corner of the page
* bottom-right - Print the image at the bottom right corner of the page
Scaling the Image
The \-o scaling=percent, \-o ppi=value, and \-o natural-scaling=percent options change the size of a printed image:
lp \-o scaling=percent filename ENTER
lp \-o ppi=value filename ENTER
lpr \-o natural-scaling=percent filename ENTER
The scaling=percent value is a number from 1 to 800 specifying the size in relation to the page (not the image.) A scaling of 100 percent will fill the page as completely as the image aspect ratio allows. A scaling of 200 percent will print on up to 4 pages.
The ppi=value value is a number from 1 to 1200 specifying the resolution of the image in pixels per inch. An image that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch, for example. If the specified resolution makes the image larger than the page, multiple pages will be printed to satisfy the request.
The natural-scaling=percent value is a number from 1 to 800 specifying the size in relation to the natural image size. A scaling of 100 percent will print the image at its natural size, while a scaling of 50 percent will print the image at half its natural size. If the specified scaling makes the image larger than the page, multiple pages will be printed to satisfy the request.
Adjusting the Hue (Tint) of an Image
The \-o hue=value option will adjust the hue of the printed image, much like the tint control on your television:
lp \-o hue=value filename ENTER
lpr \-o hue=value filename ENTER
The value argument is a number from \-360 to 360 and represents the color hue rotation. The following table summarizes the change you'll see with different colors:
Original hue=-45 hue=45
Red Purple Yellow-orange
Green Yellow-green Blue-green
Yellow Orange Green-yellow
Blue Sky-blue Purple
Magenta Indigo Crimson
Cyan Blue-green Light-navy-blue
The default hue adjustment is 0.
Adjusting the Saturation (Color) of an Image
The \-o saturation=percent option adjusts the saturation of the colors in an image, much like the color knob on your television:
lp \-o saturation=percent filename ENTER
lpr \-o saturation=percent filename ENTER
The percent argument specifies the color saturation from 0 to 200. A color saturation of 0 produces a black-and-white print, while a value of 200 will make the colors extremely intense.
The default saturation is 100.
HP-GL/2 Options
The following options apply to HP-GL/2 files.
Printing in Black
The \-o blackplot option specifies that all pens should plot in black:
lp \-o blackplot filename ENTER
lpr \-o blackplot filename ENTER
The default is to use the colors defined in the plot file or the standard pen colors defined in the HP-GL/2 reference manual from Hewlett Packard.
Fitting the Plot on the Page
The \-o fitplot option specifies that the plot should be scaled to fit on the page:
lp \-o fitplot filename ENTER
lpr \-o fitplot filename ENTER
The default is to use the absolute distances specified in the plot file.
NOTE:
This feature depends upon an accurate plot size (PS) command in the HP-GL/2 file. If no plot size is given in the file than the HP-GL/2 filter assumes the plot is ANSI E size.
Setting the Default Pen Width
The \-o penwidth=value option specifies the default pen width for HP-GL/2 files:
lp \-o penwidth=value filename ENTER
lpr \-o penwidth=value filename ENTER
The pen width value specifies the pen width in micrometers. The default value of 1000 produces lines that are 1 millimeter in width. Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.
NOTE:
This option is ignored when the pen widths are set in the plot file.
Raw or Unfiltered Output
The \-o raw option allows you to send files directly to a printer without filtering. This is sometimes required when printing from applications that provide their own "printer drivers" for your printer:
lp \-o raw filename ENTER
lpr \-o raw filename ENTER
The \-l option can also be used with the lpr command to send files directly to a printer:
lpr \-l filename ENTER
4 - Saving Printer Options and Defaults
This chapter describes how to save printer options for your printer and set your own default printer.
Printer Options
Each printer supports a large number of options, which you learned about in Chapter 3, "Standard Printer Options". Rather than specifying these options each time you print a file, CUPS allows you to save them as "default" options for the printer.
The lpoptions(1) command saves the options for your printers. Like the lp and lpr commands, it accepts printer options using the \-o argument:
lpoptions \-o prettyprint ENTER
lpoptions \-o media=A4 \-o sides=two-sided-long-edge ENTER
lpoptions \-o media=Legal \-o scaling=100 ENTER
Once saved, any lp or lpr command will use them when you print.
Note:
Running the lpoptions command as the root user (or any user with a UID of 0) will set the default options for all users. The root account does not have its own set of default options.
Setting Options for a Specific Printer
The previous example shows how to set the options for the default printer. The \-p printer option specifies the options are for another printer:
lpoptions \-p laserjet \-o prettyprint ENTER
lpoptions \-p laserjet \-o media=A4 \-o sides=two-sided-long-edge ENTER
lpoptions \-p deskjet \-o media=Legal \-o scaling=100 ENTER
Removing Options
The previous two examples shows how to set options for the default and a specific printer. Below, shows you how to remove the saved option using the \-r argument:
lpoptions \-r prettyprint ENTER
lpoptions \-p laserjet \-r prettyprint ENTER
Viewing the Current Defaults
The lpoptions command can also be used to show the current options by not specifying any new options on the command-line:
lpoptions ENTER
media=A4 sides=two-sided-long-edge
lpoptions \-p deskjet ENTER
media=Legal scaling=100
Viewing Options for a Specific Printer
You can display the supported options using the lpoptions command with the \-l option, as follows:
lpoptions \-p laserjet \-l ENTER
Setting the Default Printer
The administrator normally will set a system-wide default printer that is normally used as the default printer by everyone. Use the \-d printer option to set your own default printer:
lpoptions \-d deskjet ENTER
The printer can be local (deskjet) or remote ( deskjet@server).
Printer Instances
Besides setting options for each print queue, CUPS supports printer instances which allow you to define several different sets of options for each printer. You specify a printer instance using the slash (/) character:
lpoptions \-p laserjet/duplex \-o sides=two-sided-long-edge ENTER
lpoptions \-p laserjet/legal \-o media=Legal ENTER
The lp and lpr commands also understand this notation:
lp \-d laserjet/duplex filename ENTER
lpr \-P laserjet/legal filename ENTER
Removing Instances
Use the \-x printer/instance option to remove a printer instance that you no longer need:
lpoptions \-x laserjet ENTER
lpoptions \-x laserjet/duplex ENTER
lpoptions \-x laserjet/legal ENTER
The \-x option only removes the default options for that printer and instance; the original print queue will remain until deleted with the lpadmin(8) command by the administrator.
# Allow printing to printer MyLaserJet from
# itself and computers 192.10.2.5 and 192.10.2.6
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.5
Allow from 192.10.2.6
</Location>
# Allow printing to printer MyLaserJet from
# itself and all computers on subnet 192.10.2.x
<Location /printers/MyLaserJet>
...
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.10.2.0/255.255.255.0
</Location></property>
hibernateVersion: 1
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-07-21 16:20:12.000
originalVersion: 3637388
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182336</id>
<property name="hibernateVersion">1</property>
<property name="title">CUPS Reference</property>
<property name="lowerTitle">cups reference</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215104</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 11:13:24.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-07-21 16:20:12.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637388</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182338
Fecha creación: 2008-04-10 17:02:47.000
<property name="body">h3. Bash Template for Oracle/Crystal server on Linux:
{code}
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
CRYSTALDIR=/usr/local/CE10/crystal; export CRYSTALDIR
# User specific environment and startup programs
TOM=/usr/jakarta-tomcat-5.0.28; export TOM
JAVA_HOME=/usr/java/j2sdk1.4.2_05; export JAVA_HOME
CATALINA_HOME=/usr/jakarta-tomcat-5.0.28; export CATALINA_HOME
TWO_TASK=DEV; export TWO_TASK
LD_ASSUME_KERNEL=2.4.1; export LD_ASSUME_KERNEL
ORACLE_BASE=/opt/oracle; export ORACLE_BASE
ORACLE_HOME=/opt/oracle/product/9.2.0; export ORACLE_HOME
ORACLE_SID=DEV; export ORACLE_SID
ORACLE_OWNER=oracle; export ORACLE_OWNER
SH_LIB_PATH=$ORACLE_HOME/lib; export SH_LIB_PATH
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN
ORACLE_TERM=xterm; export ORACLE_TERM
CLASSPATH=/opt/oracle/product/9.2.0/jdbc/lib/classes111.zip:/usr/local/CE10/crystal/enterprise/java/applications/cewcanative.jar; export CLASSPATH
NLS_LANG=AMERICAN; export NLS_LANG
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib; export LD_LIBRARY_PATH
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin:/usr/java/j2sdk1.4.2_05/bin
#BASEDIR=$TOM; export BASEDIR
export PATH
unset USERNAME
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-10 17:02:47.000
originalVersion: 3637395
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182338</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuration Notes for Business Objects or Crystal Reports on Linux</property>
<property name="lowerTitle">configuration notes for business objects or crystal reports on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215106</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 17:02:47.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-10 17:02:47.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637395</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182339
Fecha creación: 2008-04-14 08:59:59.000
<property name="body">h2. This document assumes you have the ncpmount, ncp, ncplogin, ncpmap, and ncpumount utilities installed on your machine
{code}
ncpmount -S cl01-adusers-server -A 134.250.12.107 -U username.it.administration.suu -V adusers/IT/Yourdir /dir/where/youwantitmountedonlocalfilesystem
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-14 08:59:59.000
originalVersion: 4063234
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182339</id>
<property name="hibernateVersion">1</property>
<property name="title">Mapping Netware Drives under Linux</property>
<property name="lowerTitle">mapping netware drives under linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215107</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 08:59:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-14 08:59:59.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063234</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182342
Fecha creación: 2008-04-14 09:05:54.000
<property name="body">SQUID INSTALLATION:
Sent subscribe request to squid-users-subscribe@squid-cache.org
#Fix open files limit - added the following to /etc/security/limits.conf
squid soft nofile 4096
squid hard nofile 63536
#Added the following line to /usr/include/bits/types.h file:
#define _ _FD_SETSIZE 8192
#Ran the following as root; these will need to be executed before squid start; we will
stick them in the rc.d script:
ulimit -Hn 8192
echo "1024 61000" > /proc/sys/net/ipv4/ip_local_port_range
Configure command:
./configure --prefix=/usr/local/squid --localstatedir=/squidcache/var --sysconfdir=/etc --enable-useragent-log --enable-icmp --enable-delay-pools --enable-htcp
--enable-referer-log --enable-snmp --enable-cachemgr-hostname=squidcache.suu.edu --enable-ssl --with-openssl=/usr/local/ssl --enable-cache-digests --disable-http-violations
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-14 09:05:54.000
originalVersion: 4063236
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182342</id>
<property name="hibernateVersion">1</property>
<property name="title">Configure Squid</property>
<property name="lowerTitle">configure squid</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215110</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:05:54.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-14 09:05:54.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063236</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182356
Fecha creación: 2008-04-14 09:09:26.000
<property name="body">{code}The key to creating self-signed certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
{code}{color:#333333}Installing your Certificate with Jakarta-Tomcat.{color}
{color:#333333}(For Linux & Windows){color}{color:#333333}&nbsp;{color}
| {color:#333333}This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.{color} || {color:#333333}{*}Creating a Certificate Signing Request{*}{color}\\ |
| {color:#333333}1. Generate a private key with the following command:{color}\\ {color:#333333}*$JAVA_HOME/bin/keytool \-genkey \-alias tomcat \-keyalg RSA \-keysize 1024 \-validity 730 \-keystore /path/to/domainname.kdb{*}{color}\\ \\ {color:#333333}You will be prompted for a password. Tomcat uses a default password of "changeit" - do NOT use that. If you use a different password, you will need to specify a custom password in the server.xml configuration file.{color}\\ \\ {color:#333333}In the next field you will be asked "What is your first and last name?" At this prompt, you must specify the common name (FQDN) of your web site.{color}\\ {color:#333333}You will then be prompted for your organizational unit, organization, etc.{color}\\ \\ {color:#333333}2. Generate the Certificate Signing Request (CSR){color}\\ {color:#333333}*$JAVA_HOME/bin/keytool \-certreq \-alias tomcat \-keystore /path/to/keystore.kdb \-file servername.csr{*}{color}\\ \\ {color:#333333}3. Now go to{color}{color:#333333}&nbsp;{color}ipsCA{color:#333333}&nbsp;{color}{color:#333333}, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include BEGIN NEW CERTIFICATE REQUEST and END NEW CERTIFICATE REQUEST in your copied text.{color}\\
\\ {color:#333333}4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.{color}\\ | |
| {color:#333333}{*}Installing a Server Digital Certificate{*}{color}\\ |
| {color:#333333}{*}Upload a New SSL Certificate{*}{color}\\ {color:#333333}After you receive your certificate,{color}{color:#333333}&nbsp;{color}{color:#333333}{*}two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1{*}{color}{color:#333333}.{color}{color:#333333}&nbsp;{color}{color:#333333}{*}It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections{*}{color}{color:#333333}&nbsp;{color}{color:#333333}with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:{color}\\
IPSServidores.crt \\
IPSCACLASEA1.crt \\
IPS-IPSCABUNDLE.CRT \\ {color:#333333}You must first export the certificates in the following format:{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSCACLASEA1 Chained CA certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}chain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy your{color}{color:#333333}&nbsp;{color}{color:#333333}{_}web server certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor such as notepad and save as{color}{color:#333333}{_}yourdomain.cer{_}{color}{color:#333333}&nbsp;{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Copy the{color}{color:#333333}&nbsp;{color}{color:#333333}{_}IPSServidores root CA{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}{_}certificate{_}{color}{color:#333333}&nbsp;{color}{color:#333333}into a text editor and save as{color}{color:#333333}&nbsp;{color}{color:#333333}{_}root.cer{_}{color}{color:#333333}_&nbsp;_{color}{color:#333333}on a Windows machine with IE 5+.{color}
# {color:#333333}Double-click the root.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}
# {color:#333333}Double-click the chain.cer and select Install. Choose "Place all certificates in following store" and select Intermediate Certification Authorities. Complete the Wizard.{color}
# {color:#333333}Double-click the chain.cer again and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}Base-64{*}{color}{color:#333333}&nbsp;{color}{color:#333333}option, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}
# {color:#333333}Double click the youdomain.cer and select the Details tab, then Copy to File, then select the{color}{color:#333333}{*}PKCS#7 (p7b)*{color}{color:#333333}&nbsp;{color}{color:#333333}option, also select the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}Include all certificates in the certification path{*}{color}{color:#333333}, give your copied certificate a file name of{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b{*}{color}{color:#333333}{*}The following certificate installations must be executed in the stated order.*{color}\\ {color:#333333}1. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}root_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}and{color}{color:#333333}&nbsp;{color}{color:#333333}{*}chain_der.cer{*}{color}{color:#333333}&nbsp;{color}{color:#333333}files using:{color}{color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias root - file root_der.cer{*}{color}\\ {color:#333333}*$ keytool \-import \-trustcacerts \-keystore my.kdb \-alias chain - file chain_der.cer{*}{color}{color:#333333}{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}2. Import the{color}{color:#333333}&nbsp;{color}{color:#333333}{*}yourdomain.p7b file{*}{color}{color:#333333}&nbsp;{color}{color:#333333}using:{color}{color:#333333}{*}{color}{color:#333333}{*}keytool \-import \-trustcacerts \-keystore my.kdb \-alias tomcat \-file yourdomain.p7b{*}{color}{color:#333333}{*}{color}{color:#333333}With my.kdb being your keystore.{color}\\ {color:#333333}&nbsp;{color}\\ {color:#333333}{*}Update server.xml configuration{color} {color:#333333}[file:\*|file:*]{color}\\ {color:#333333}1. Open "$JAKARTA_HOME/conf/server.xml" in a text editor.{color}\\ {color:#333333}2. Find the following section:{color}\\ {color:#333333}<Connector{color}{color:#333333}&nbsp;{color}\\ {color:#333333}...{color}{color:#333333}&nbsp;{color}\\ {color:#333333}scheme="https"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}secure="true"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystoreFile="/pathto/my.kdb"{color}{color:#333333}&nbsp;{color}\\ {color:#333333}keystorePass="mypassword"{color}\\ {color:#333333}3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.{color}\\ {color:#333333}4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.{color}\\ {color:#333333}5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows){color} | |</property>
hibernateVersion: 1
version: 9
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-19 11:40:32.000
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182356</id>
<property name="hibernateVersion">1</property>
<property name="title">Managing Certificates on Tomcat</property>
<property name="lowerTitle">managing certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215123</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-19 11:40:32.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182370
Fecha creación: 2011-11-16 08:49:08.000
<property name="body">
h2. Check the location of all resources
{code}
sudo sudo crm_mon -1
{code}
h2. Migrate a resource to another node
{code}
sudo crm_resource -M -r api_ip -H halb2
{code}
h2. Move a resource back to its normal location
{code}
crm_resource -U -r api_ip
{code}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-11-16 08:53:06.000
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182370</id>
<property name="hibernateVersion">1</property>
<property name="title">Routine Cluster Tasks</property>
<property name="lowerTitle">routine cluster tasks</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215138</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-11-16 08:53:06.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182403
Fecha creación: 2008-04-27 18:40:03.000
<property name="body">{info:title=Description}
These instructions explain how to access our VPN using Linux without the Cisco vpn client.
{info}
h2. Setup
# Install vpnc {code:title=Ubuntu}sudo apt-get install vpnc{code}
# Place this file in /etc/vpnc/ [^suu.conf]
h2. Running
# {code}sudo vpnc suu{code} or {code}sudo vpnc suu --no-detach{code}</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-05-23 22:22:59.000
originalVersion: 4161629
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182403</id>
<property name="hibernateVersion">1</property>
<property name="title">Setting up VPN access on Linux</property>
<property name="lowerTitle">setting up vpn access on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215170</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-04-27 18:40:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-05-23 22:22:59.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161629</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182434
Fecha creación: 2011-12-05 15:14:15.000
<property name="body">h3. /etc/httpd/conf.d/ssl.conf
{code}
# SSL Cipher Suite:
# List the ciphers that the client is permitted to negotiate.
# See the mod_ssl documentation for a complete list.
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
# Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate. If
# the certificate is encrypted, then you will be prompted for a
# pass phrase. Note that a kill -HUP will prompt again. A new
# certificate can be generated using the genkey(1) command.
SSLCertificateFile /etc/pki/tls/certs/suucert.pem
# Server Private Key:
# If the key is not combined with the certificate, use this
# directive to point at the key file. Keep in mind that if
# you've both a RSA and a DSA private key you can configure
# both in parallel (to also allow the use of DSA ciphers, etc.)
SSLCertificateKeyFile /etc/pki/tls/private/suuprivate.key
# Server Certificate Chain:
# Point SSLCertificateChainFile at a file containing the
# concatenation of PEM encoded CA certificates which form the
# certificate chain for the server certificate. Alternatively
# the referenced file can be the same as SSLCertificateFile
# when the CA certificates are directly appended to the server
# certificate for convinience.
#SSLCertificateChainFile /etc/pki/tls/certs/
# Certificate Authority (CA):
# Set the CA certificate verification path where to find CA
# certificates for client authentication or alternatively one
# huge file containing all of them (file must be PEM encoded)
SSLCACertificateFile /etc/pki/tls/certs/RapidRoot.pem
{code}
h3. /etc/httpd/conf/httpd.conf
Be sure the following Trace directive exists in your global config section
{code}
### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#
TraceEnable off
{code}</property>
hibernateVersion: 1
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-12-05 15:40:52.000
originalVersion: 24346975
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182434</id>
<property name="hibernateVersion">1</property>
<property name="title">Apache2 configuration example</property>
<property name="lowerTitle">apache2 configuration example</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215202</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-12-05 15:14:15.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-12-05 15:40:52.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346975</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182613
Fecha creación: 2012-02-10 10:37:11.000
<property name="body">h3. Oracle production database servers
{code}
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude dsmsched.log
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude.dir /lib
exclude.dir /lib64
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/include
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/lib
exclude.dir /usr/lib64
exclude.dir /var/cache
exclude.dir /usr/src
exclude.dir /var/spool/cups
{code}</property>
hibernateVersion: 1
version: 9
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-14 10:01:54.000
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182613</id>
<property name="hibernateVersion">1</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215381</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-14 10:01:54.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182621
Fecha creación: 2009-01-14 11:29:48.000
<property name="body">First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as. The example given here is from our xmlbill server.
h2. Tomcat Startup Script
h5. Step 1: To make Tomcat start automatically, you must create a file in /etc/init.d called tomcat. Populate the file with the following:
{code}
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=/home/billservice/apps/apache-tomcat-6.0.18
export TOMCAT_USER=billservice
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
{code}
A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).
h5. Set to start automatically
Run the following commands as root:
{code}
#chmod 755 /etc/init.d/tomcat
#update-rc.d tomcat defaults
{code}
That's it; reboot to verify that everything starts the way you expect.</property>
hibernateVersion: 1
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2010-07-20 07:57:03.000
originalVersion: 10223743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182621</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215389</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2010-07-20 07:57:03.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182665
Fecha creación: 2012-03-05 15:17:39.000
<property name="body">h3. How do I tell what is running on a given port?
{code}
lsof -i :<port number>
i.e. lsof -i :5353
{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-03-05 15:17:39.000
originalVersion: 25395236
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182665</id>
<property name="hibernateVersion">1</property>
<property name="title">Linux commands cheat sheet</property>
<property name="lowerTitle">linux commands cheat sheet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215433</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-03-05 15:17:39.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-03-05 15:17:39.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">25395236</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182673
Fecha creación: 2009-01-29 10:13:20.000
<property name="body">Put the following in the /etc/ntp.conf file:
restrict default nomodify notrap noquery nopeer kod
restrict 127.0.0.1
server time.suu.edu
server time2.suu.edu
driftfile /var/lib/ntp/drift
broadcastdelay&nbsp; 0.008\\
Put the following in the /etc/ntp/step-tickers file:\\
time.suu.edu
time2.suu.edu</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-01-29 11:06:33.000
originalVersion: 10223857
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182673</id>
<property name="hibernateVersion">1</property>
<property name="title">NTP Configuration for physical linux hosts</property>
<property name="lowerTitle">ntp configuration for physical linux hosts</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215441</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-29 10:13:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-01-29 11:06:33.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223857</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 26182683
Fecha creación: 2009-02-04 09:40:47.000
<property name="body">433179154336b579</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-02-04 09:40:47.000
originalVersion: 10715138
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182683</id>
<property name="hibernateVersion">1</property>
<property name="title">Red Hat 5 installation key</property>
<property name="lowerTitle">red hat 5 installation key</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215451</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-02-04 09:40:47.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-02-04 09:40:47.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10715138</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 26182698
Fecha creación: 2009-02-27 08:24:05.000
<property name="body">Command to remove iptables from Red Hat linux boxes:
\\
&nbsp;rpm \-e iptables iptables-ipv6 iptstate system-config-securitylevel system-config-securitylevel-tui firstboot system-config-keyboard firstboot-tui system-config-boot libvirt libvirt-python rhn-virtualization-host</property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-11-17 08:32:55.000
originalVersion: 11239454
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182698</id>
<property name="hibernateVersion">1</property>
<property name="title">Remove linux firewall</property>
<property name="lowerTitle">remove linux firewall</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215465</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-02-27 08:24:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-11-17 08:32:55.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">11239454</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 26182727
Fecha creación: 2008-06-24 12:31:17.000
<property name="body">{info:title=Description}
Say you have a file with email addresses in it along with other junk and you just want to pull out the email addresses into a file with one email address per line... well this is how you do it.
{info}
{code}
cat list.txt | grep -o "[[:alnum:][:graph:]] *@[[:alnum:][:graph:]] *" > newfile.txt
{code}
Where list.txt contains the emails along with other stuff and newfile.txt is the file with one email address per line.</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-06-24 12:31:17.000
originalVersion: 5799968
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182727</id>
<property name="hibernateVersion">1</property>
<property name="title">Pulling Email Addresses From a File</property>
<property name="lowerTitle">pulling email addresses from a file</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215495</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-06-24 12:31:17.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-06-24 12:31:17.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">5799968</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182764
Fecha creación: 2008-07-03 12:45:33.000
<property name="body">{info:title=Description}
PostgreSQL is an open source database. This document is a collection of notes for postgresql administrators.
{info}
h3. Enabling remote connections to a postgresql database
$POSTGRES_HOME will be something like {{/etc/postgresql/8.3/main}}
{code}
cd $POSTGRES_HOME
sudo vim postgresql.conf
{code}
Find the line
{code}#listen_address = 'localhost'{code} and change it to {code}listen_address = '*'{code}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-07-03 12:45:33.000
originalVersion: 6226006
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182764</id>
<property name="hibernateVersion">1</property>
<property name="title">PostgreSQL</property>
<property name="lowerTitle">postgresql</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215531</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-07-03 12:45:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-07-03 12:45:33.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226006</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182827
Fecha creación: 2010-11-17 16:17:59.000
<property name="body">h3. Create log4j.properties file
Create a log4j.properties file in the $CATALINA_HOME/lib directory with the following contents (modify file size as desired):
{code}
log4j.rootLogger=INFO, CATALINA
# Define all the appenders
log4j.appender.CATALINA=org.apache.log4j.RollingFileAppender
log4j.appender.CATALINA.file=${catalina.base}/logs/catalina.log
log4j.appender.CATALINA.MaxFileSize=50MB
log4j.appender.CATALINA.MaxBackupIndex=200
log4j.appender.CATALINA.layout=org.apache.log4j.PatternLayout
log4j.appender.CATALINA.append=true
log4j.rootCategory=ALL, CATALINA
{code}
h3. Download JAR files
Obtain a copy of all JAR files from the sherpa server under Tomcat\log4j folder
h3. Stop Tomcat, place JARs in directories
Stop Tomcat
Place the log4j-1.2.x.jar in $CATALINA_HOME/lib.
Replace $CATALINA_HOME/bin/tomcat-juli.jar with downloaded tomcat-juli.jar
Place downloaded tomcat-juli-adapters.jar in $CATALINA_HOME/lib
Delete $CATALINA_BASE/conf/logging.properties to prevent java.util.logging generating zero length log files
Start Tomcat</property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-03-15 09:21:10.000
originalVersion: 21070062
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182827</id>
<property name="hibernateVersion">1</property>
<property name="title">Configure log4j on servers running Tomcat</property>
<property name="lowerTitle">configure log4j on servers running tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215595</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-11-17 16:17:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-03-15 09:21:10.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">21070062</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 26182884
Fecha creación: 2011-01-31 09:34:59.000
<property name="body">h3. Server-side config files
h5. /etc/services
Append the following lines to the end of the file:
{code}
# Local services
rquotad 4003/tcp
rquotad 4003/udp
{code}
h5. /etc/exports
{code}
/usr/local/jobout 134.250.7.110(rw,sync) 134.250.7.111(rw,sync)
{code}
h5. /etc/sysconfig/nfs
{code}
#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V1="no"
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=4003
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=4001
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=4001
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=4002
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=4001
# Outgoing port statd should used. The default is port
# is random
STATD_OUTGOING_PORT=4004
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS="-vvv"
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS="-vvv"
# Don't load security modules in to the kernel
#SECURE_NFS_MODS="noload"
#
# Don't load sunrpc module.
#RPCMTAB="noload"
#
{code}
h5. /etc/hosts.allow
{code}
portmap: 134.250.7.110, 134.250.7.111
lockd: 134.250.7.110, 134.250.7.111
rquotad: 134.250.7.110, 134.250.7.111
mountd: 134.250.7.110, 134.250.7.111
statd: 134.250.7.110, 134.250.7.111
{code}
h5. /etc/hosts.deny
{code}
portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL
{code}</property>
hibernateVersion: 1
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-31 10:13:46.000
originalVersion: 22151231
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182884</id>
<property name="hibernateVersion">1</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215652</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-31 10:13:46.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182943
Fecha creación: 2009-06-19 09:04:03.000
<property name="body">{suu-info}
A place to collect Tomcat documentation.
{suu-info}
h2. Tomcat Documentation
{suu-tip}
The following list is a collection of Tomcat documentation from all over our wiki. Anything with the label "tomcat" will show up in this list.
{suu-tip}
{contentbylabel:labels=tomcat}</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2009-06-19 09:04:03.000
originalVersion: 12681451
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182943</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat</property>
<property name="lowerTitle">tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215711</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2009-06-19 09:04:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2009-06-19 09:04:03.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681451</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182961
Fecha creación: 2009-07-01 15:18:23.000
<property name="body">From Dave Iler:
This document tells how to switch from sendmail to postfix under Redhat AS 4.
The info was found with google & applied to ginkgo.&nbsp; It worked.
1)&nbsp; service sendmail stop
2)&nbsp;&nbsp;&nbsp; chkconfig sendmail off
3)&nbsp;&nbsp;&nbsp; alternatives \--display mta
4)&nbsp;&nbsp;&nbsp; alternatives \--config mta
At this point the alteratives program will offer you a menu of choices for
the mta.&nbsp; The default will have a (+) plus sign by it.&nbsp; Often, sendmail is
the first choice and has a (+) by it; and postfix is listed second.
Press the number that refers to postfix & hit the <enter> key.
5)&nbsp;&nbsp;&nbsp; chkconfig postfix on
6)&nbsp;&nbsp;&nbsp; service postfix start
At this point you should be able to enter the next command and see something
like this:
\[root@ginkgo \~\]# alternatives \--display mta
mta - status is manual.
&nbsp;link currently points to /usr/sbin/sendmail.postfix
/usr/sbin/sendmail.sendmail - priority 90
&nbsp;slave mta-pam: /etc/pam.d/smtp.sendmail
&nbsp;slave mta-mailq: /usr/bin/mailq.sendmail
&nbsp;slave mta-newaliases: /usr/bin/newaliases.sendmail
&nbsp;slave mta-rmail: /usr/bin/rmail.sendmail
&nbsp;slave mta-sendmail: /usr/lib/sendmail.sendmail
&nbsp;slave mta-mailqman: /usr/share/man/man1/mailq.sendmail.1.gz
&nbsp;slave mta-newaliasesman: /usr/share/man/man1/newaliases.sendmail.1.gz
&nbsp;slave mta-aliasesman: /usr/share/man/man5/aliases.sendmail.5.gz
&nbsp;slave mta-sendmailman: /usr/share/man/man8/sendmail.sendmail.8.gz
/usr/sbin/sendmail.postfix - priority 30
&nbsp;slave mta-pam: /etc/pam.d/smtp.postfix
&nbsp;slave mta-mailq: /usr/bin/mailq.postfix
&nbsp;slave mta-newaliases: /usr/bin/newaliases.postfix
&nbsp;slave mta-rmail: /usr/bin/rmail.postfix
&nbsp;slave mta-sendmail: /usr/lib/sendmail.postfix
&nbsp;slave mta-mailqman: /usr/share/man/man1/mailq.postfix.1.gz
&nbsp;slave mta-newaliasesman: /usr/share/man/man1/newaliases.postfix.1.gz
&nbsp;slave mta-aliasesman: /usr/share/man/man5/aliases.postfix.5.gz
&nbsp;slave mta-sendmailman: /usr/share/man/man1/sendmail.postfix.1.gz
Current `best' version is /usr/sbin/sendmail.sendmail.
Sendmail can now be removed, if desired.</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-01 15:18:23.000
originalVersion: 12681525
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182961</id>
<property name="hibernateVersion">1</property>
<property name="title">Switch from Sendmail to Postfix in Red Hat 4</property>
<property name="lowerTitle">switch from sendmail to postfix in red hat 4</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215729</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-07-01 15:18:23.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-01 15:18:23.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681525</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182962
Fecha creación: 2009-07-01 16:52:46.000
<property name="body">{code}
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 1.0 (buildd@palmer) Sun Feb 1 20:21:04 UTC 2009
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "ServerFlags"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "DELL 2407WFP"
HorizSync 30.0 - 83.0
VertRefresh 56.0 - 60.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 9800 GT"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "1"
Option "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-1: 1920x1200_60 +1920+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
{code}</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 13:46:29.000
originalVersion: 12681527
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182962</id>
<property name="hibernateVersion">1</property>
<property name="title">Xorg configuration file for nVidia 9800GT Ubuntu 9.04 Jaunty</property>
<property name="lowerTitle">xorg configuration file for nvidia 9800gt ubuntu 9.04 jaunty</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215730</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-07-01 16:52:46.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 13:46:29.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681527</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26182997
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"># Physically put the disk in the server&nbsp; or create a new virtual disk for the VM
# Use fdisk to create new partition on the disk.
# Extend existing volume group onto new partition.
# Extend existing logical volume onto new space.
# Extend filesystem.
For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.
# Physically put the disk in the server and make it available either in an array or some other way
# Use fdisk to create new partition on the disk.
#* As root run fdisk on the new disk. For example you would run fdisk /dev/sdc.
#* On this new disk you will create a new partition. Inside of the fdisk program you create a new partition by typing the letter "n" followed by the enter key.
#* It will then ask you if you want it to be a primary partition or an extended partition. For this example we will just assume we want it to be a primary partition. To do this we type the letter "p" followed by the enter key.
#* Next it will ask for the starting point and ending point of this partition. For this example, we will simply select the defaults by hitting the enter key twice.
#* If you want to view the details of the new partition, you can type the letter "p" from the fdisk prompt.
#* Next we need to change the type for this new partition. We do this by typing the letter "t" followed by the enter key.
#* We need it to be of the Linux LVM type. The Hex code for Linux LVM is 8e. We type in "8e" followed by the enter key and it will tell us that it changed the system type for this partition to Linux LVM.
#* We then need to save these changes and exit fdisk. We do this by typing the letter "w" (for write) followed by the enter key.
# Use pvcreate to lay down the "setup" on the physical partition.
#* This sets up physical extents and other things that LVM needs. The command we run is "pvcreate /dev/sdc1"
# Extend existing volume group onto new partition.
#* For this example we are going to assume that we have an existing volume group named VolGroup00. We can display information about this volume group using the vgdisplay command. If we type "vgdisplay" without any arguments, it will display all the volume groups. If we just want information about the "VolGroup00" volume group, we would type "vgdisplay VolGroup00".
#* To extend the VolGroup00 volume group onto the new partition, we use the vgextend command. Type "vgextend VolGroup00 /dev/sdc1" followed by the enter key
# Extend existing logical volume onto new space.
#* For this example we are going to assume that we have an existing logical volume on the VolGroup00 volume group that is named BACKUP. The full path to this logical volume would be "/dev/mapper/VolGroup00-BACKUP". We can view information about this logical volume by typing "lvdisplay /dev/mapper/VolGroup00-BACKUP".
#* To extend this existing logical volume onto the new space we use the lvextend command. Type "lvextend \-L \+100G /dev/mapper/VolGroup00-BACKUP /dev/sdc1". This command says that we want to increase the logical volume by 100GB. This is only possible if /dev/sdc1 is a member of volume group VolGroup00 and there is enough free disk space on it.
# The last thing we need to do is increase the filesystem.
#* Which command we use to increase the filesystem depends on what filesystem type we are currently using.&nbsp; If we are using ext3, we will use either the "ext2online" or the "resize2fs" command. On RHEL 5, we can use the "resize2fs" command, which will recognize that the filesystem is currently mounted and perform an "on-line" resize.
#* On both resize_reiserfs and ext2online, the size is optional. If we want the filesystem to take up all the available space on our logical volume, we don't need to put the size. To extend the filesystem type "resize2fs /dev/mapper/VolGroup00-BACKUP".</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-03 11:21:22.000
originalVersion: 13795381
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26182997</id>
<property name="hibernateVersion">1</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215765</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-03 11:21:22.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26183001
Fecha creación: 2009-08-17 12:59:27.000
<property name="body">Since the Ecommerce subnet is very locked down, we have to take a couple of extra steps to enable hosts to talk to each other even though they are in the same subnet.
For Ubuntu Server:
edit the /etc/rc.local file, and put the following lines just before the last line:
For the host you want to connect TO:
exec arp \-s <ipaddress><space><macaddress>
For the host you are ON: (optional; I like this for documentation purposes)
exec arp \-s <ipaddress<space><macaddress>
Save the file, and then make sure it is flagged executable.
That's it - on next reboot, you should be able to communicate with the remote box.</property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-19 11:45:23.000
originalVersion: 14024730
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26183001</id>
<property name="hibernateVersion">1</property>
<property name="title">Using the ARP command to permit inter-host communication in the Ecommerce Subnet</property>
<property name="lowerTitle">using the arp command to permit inter-host communication in the ecommerce subnet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26215769</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-17 12:59:27.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-19 11:45:23.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024730</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26476588
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory</h4>
<h2>Example contents of dsm.opt file</h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
]] ></ac:plain-text-body></ac:macro>
<h2>Configuring Automatic Startup</h2>
<p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro>
<h4>Next, execute the following commands:</h4>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro>
<h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4>
<p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro>
<h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2>
<h4>Error loading shared libraries</h4>
<p>If you encounter the following message while starting dsmc</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro>
<p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro>
<p>&nbsp;and then reimport the shared objects using the command</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
ldconfig
]] ></ac:plain-text-body></ac:macro>
<h4>English message repository not found</h4>
<p>If you get the error message</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro>
<p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/en_US/
]] ></ac:plain-text-body></ac:macro>
<h2>Ubuntu Server Notes</h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
Installing TSM Client V6.6.2 on Ubuntu 10.04 Server 64-bit
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* libstdc++5 gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 48
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-08 10:36:51.000
versionComment: Migrated to Confluence 4.0
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476588</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26509356</id>
</element>
</collection>
<property name="version">48</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-08 10:36:51.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26476590
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory</h4><h2>Example contents of dsm.opt file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder and do the following:
#apt-get install alien ksh ia32-libs* libstdc++5 gawk
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* libstdc++5 gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 49
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-04 14:49:07.354
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476590</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26509358</id>
</element>
</collection>
<property name="version">49</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-04 14:49:07.354</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26476592
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory</h4><h2>Example contents of dsm.opt file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder and do the following:
#apt-get install alien ksh ia32-libs* libstdc++5 gawk
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
If it doesn't work, proceed to the......
HARD WAY: (recompiling from scratch)
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* libstdc++5 gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 50
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-04 14:53:11.560
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476592</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26509360</id>
</element>
</collection>
<property name="version">50</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-04 14:53:11.560</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26476594
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
DSM.SYS:
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder and do the following:
#apt-get install alien ksh ia32-libs* libstdc++5 gawk
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
If it doesn't work, proceed to the......
HARD WAY: (recompiling from scratch)
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* libstdc++5 gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 51
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-04 14:59:32.595
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476594</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26509362</id>
</element>
</collection>
<property name="version">51</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-04 14:59:32.595</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26476596
Fecha creación: 2012-02-10 10:37:11.000
<property name="body"><h3>Oracle production database servers</h3>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude dsmsched.log
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude.dir /lib
exclude.dir /lib64
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/include
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/lib
exclude.dir /usr/lib64
exclude.dir /var/cache
exclude.dir /usr/src
exclude.dir /var/spool/cups
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 10
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-14 10:01:55.000
versionComment: Migrated to Confluence 4.0
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476596</id>
<property name="hibernateVersion">2</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26509364</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-14 10:01:55.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26476597
Fecha creación: 2012-02-10 10:37:11.000
<property name="body"><h3>Oracle production database servers</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude dsmsched.log
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude.dir /lib
exclude.dir /lib64
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/include
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/lib
exclude.dir /usr/lib64
exclude.dir /var/cache
exclude.dir /usr/src
exclude.dir /var/spool/cups
]] ></ac:plain-text-body></ac:macro><h3>Ubuntu Server</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 11
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-04 15:03:09.985
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476597</id>
<property name="hibernateVersion">2</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26509365</id>
</element>
</collection>
<property name="version">11</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-04 15:03:09.985</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 26476598
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder and do the following:
#apt-get install alien ksh ia32-libs* libstdc++5 gawk
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
If it doesn't work, proceed to the......
HARD WAY: (recompiling from scratch)
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* libstdc++5 gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 52
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-04 15:00:49.977
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">26476598</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">26509366</id>
</element>
</collection>
<property name="version">52</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-04 15:00:49.977</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 27000867
Fecha creación: 2012-03-05 15:17:39.000
<property name="body"><h3>How do I tell what is running on a given port?</h3>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
lsof -i :<port number>
i.e. lsof -i :5353
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-03-05 15:17:40.000
versionComment: Migrated to Confluence 4.0
originalVersion: 25395236
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">27000867</id>
<property name="hibernateVersion">2</property>
<property name="title">Linux commands cheat sheet</property>
<property name="lowerTitle">linux commands cheat sheet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">27033633</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-03-05 15:17:39.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-03-05 15:17:40.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">25395236</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 27000873
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache </h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro>
<h2>Apache SSL </h2>
<p>Get our wildcard certificate and private key. </p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
]] ></ac:plain-text-body></ac:macro>
<h2>Configure Apache Virtual Host </h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
]] ></ac:plain-text-body></ac:macro>
<h2>Install HAProxy </h2>
<ol>
<li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li>
</ol>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro>
<h2>Install heartbeat and pacemaker </h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro>
<p><strong>Create ha.cf file (main heartbeat config file)</strong> </p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
]] ></ac:plain-text-body></ac:macro>
<h2>Modify /etc/default/haproxy file</h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
ENABLED=1
]] ></ac:plain-text-body></ac:macro>
<p><strong>Create authkeys file for heartbeat</strong> (original node only)<br />
The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file. </p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; \
dd if=/dev/urandom bs=512 count=1 | openssl md5 ) \
> /etc/ha.d/authkeys
chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro>
<p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p>
<p><strong>Restart heartbeat</strong> </p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro>
<p><strong>Verify that they are online</strong> </p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro>
<p><strong>Configure shared IPAddress</strong> <br />
This is part of Pacemaker. To Pacemaker, an ipaddress is a resource. </p>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>Tip:</strong> <br />
The following commands only need to be run on one node. They will be replicated automatically to the second node. <br />
<strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br />
*eth0&quot; - the nic we want this ip to use. </p></ac:rich-text-body></ac:macro>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro>
<p><strong>Set a preferred node for the ip resource</strong> <br />
This tells Pacemaker which node the resource ip should live on when both nodes are up. </p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro>
<p><strong>Setup Pacemaker monitoring</strong> </p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro>
<p><strong>Show running configuration</strong> </p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro> </property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-11-02 12:19:11.000
versionComment: Migrated to Confluence 4.0
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">27000873</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">27033639</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-11-02 12:19:11.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 27000876
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-18 14:40:07.906
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">27000876</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">27033642</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-18 14:40:07.906</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 27000878
Fecha creación: 2011-11-16 08:49:08.000
<property name="body">
<h2>Check the location of all resources</h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo sudo crm_mon -1
]] ></ac:plain-text-body></ac:macro>
<h2>Migrate a resource to another node</h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:macro>
<h2>Move a resource back to its normal location</h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-11-16 08:53:07.000
versionComment: Migrated to Confluence 4.0
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">27000878</id>
<property name="hibernateVersion">2</property>
<property name="title">Routine Cluster Tasks</property>
<property name="lowerTitle">routine cluster tasks</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">27033644</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-11-16 08:53:07.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 27361282
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder on Sherpa and do the following:
#apt-get install alien ksh ia32-libs* libstdc++5 gawk
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
If it doesn't work, proceed to the......
HARD WAY: (recompiling from scratch)
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* libstdc++5 gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 1
version: 53
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-04 15:04:33.367
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">27361282</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">27394050</id>
</element>
</collection>
<property name="version">53</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-04 15:04:33.367</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 27361287
Fecha creación: 2011-01-31 09:34:59.000
<property name="body"><h3>Server-side config files</h3>
<h5>/etc/services</h5>
<p>Append the following lines to the end of the file:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
# Local services
rquotad 4003/tcp
rquotad 4003/udp
]] ></ac:plain-text-body></ac:macro>
<h5>/etc/exports</h5>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
/usr/local/jobout 134.250.7.110(rw,sync) 134.250.7.111(rw,sync)
]] ></ac:plain-text-body></ac:macro>
<h5>/etc/sysconfig/nfs</h5>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V1="no"
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=4003
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=4001
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=4001
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=4002
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=4001
# Outgoing port statd should used. The default is port
# is random
STATD_OUTGOING_PORT=4004
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS="-vvv"
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS="-vvv"
# Don't load security modules in to the kernel
#SECURE_NFS_MODS="noload"
#
# Don't load sunrpc module.
#RPCMTAB="noload"
#
]] ></ac:plain-text-body></ac:macro>
<h5>/etc/hosts.allow</h5>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
portmap: 134.250.7.110, 134.250.7.111
lockd: 134.250.7.110, 134.250.7.111
rquotad: 134.250.7.110, 134.250.7.111
mountd: 134.250.7.110, 134.250.7.111
statd: 134.250.7.110, 134.250.7.111
]] ></ac:plain-text-body></ac:macro>
<h5>/etc/hosts.deny</h5>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-01-31 10:13:47.000
versionComment: Migrated to Confluence 4.0
originalVersion: 22151231
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">27361287</id>
<property name="hibernateVersion">1</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">27394055</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-01-31 10:13:47.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 27361352
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 6
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-18 14:49:35.567
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">27361352</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">27394119</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-18 14:49:35.567</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 28213443
Fecha creación: 2008-03-06 15:37:40.000
<property name="body"><h2>First Step</h2>
<h5>If IP is assigned by DHCP, make sure /etc/hosts file looks like this:</h5>
<ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[127.0.0.1 servername.suu.edu localhost.localdomain localhost servername
]] ></ac:plain-text-body></ac:macro>
<h5>If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):</h5>
<ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
]] ></ac:plain-text-body></ac:macro>
<h2>Second Step</h2>
<h5>If you need the change to happen immediately without a reboot, run the following command as root:</h5>
<ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#hostname yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro>
<h2>Third Step</h2>
<h5>This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:</h5>
<ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro>
<h2>Fourth Step</h2>
<h5>Edit the /etc/sysconfig/network file HOSTNAME line to read:</h5>
<ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/sysconfig/network</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[HOSTNAME=yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro>
<h2>Fifth Step</h2>
<h5>As root, run the following command:</h5>
<ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
]] ></ac:plain-text-body></ac:macro>
<h2>Sixth Step</h2>
<h5>Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file</h5>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet
]] ></ac:plain-text-body></ac:macro>
<h2>Finally, reboot.</h2></property>
hibernateVersion: 1
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-05 08:04:20.000
versionComment: Migrated to Confluence 4.0
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">28213443</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change host name and ip address</property>
<property name="lowerTitle">how to properly change host name and ip address</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">28246193</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-05 08:04:20.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 28213445
Fecha creación: 2008-03-06 15:37:40.000
<property name="body"><h2>First Step</h2><h5>If IP is assigned by DHCP, make sure /etc/hosts file looks like this:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername]] ></ac:plain-text-body></ac:macro><h5>If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
Ubuntu:
127.0.0.1 localhost
127.0.1.1 lb1
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
]] ></ac:plain-text-body></ac:macro><h2>Second Step</h2><h5>If you need the change to happen immediately without a reboot, run the following command as root:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#hostname yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Third Step</h2><h5>This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fourth Step</h2><h5>Edit the /etc/sysconfig/network file HOSTNAME line to read:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/sysconfig/network</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[HOSTNAME=yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fifth Step</h2><h5>As root, run the following command:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
]] ></ac:plain-text-body></ac:macro><h2>Sixth Step</h2><h5>Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet
]] ></ac:plain-text-body></ac:macro><h2>Finally, reboot.</h2></property>
hibernateVersion: 1
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-09-26 16:05:54.828
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">28213445</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change host name and ip address</property>
<property name="lowerTitle">how to properly change host name and ip address</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">28246195</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-09-26 16:05:54.828</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 28213447
Fecha creación: 2008-03-06 15:37:40.000
<property name="body"><h2>First Step</h2><h5>If IP is assigned by DHCP, make sure /etc/hosts file looks like this:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername]] ></ac:plain-text-body></ac:macro><h5>If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
Ubuntu:
127.0.0.1 localhost
127.0.1.1 yourserver
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
]] ></ac:plain-text-body></ac:macro><h2>UBUNTU Step - /etc/hostname</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[yourserver]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Second Step</h2><h5>If you need the change to happen immediately without a reboot, run the following command as root:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#hostname yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Third Step</h2><h5>This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fourth Step</h2><h5>Edit the /etc/sysconfig/network file HOSTNAME line to read:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/sysconfig/network</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[HOSTNAME=yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fifth Step</h2><h5>As root, run the following command:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
]] ></ac:plain-text-body></ac:macro><h2>Sixth Step</h2><h5>Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet
]] ></ac:plain-text-body></ac:macro><h2>Finally, reboot.</h2></property>
hibernateVersion: 1
version: 9
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-09-26 16:07:10.261
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">28213447</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change host name and ip address</property>
<property name="lowerTitle">how to properly change host name and ip address</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">28246197</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-09-26 16:07:10.261</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 29294677
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 7
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-06-13 10:09:24.168
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">29294677</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">29327443</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-06-13 10:09:24.168</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 29294678
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro><p>Allow IP Addresses to bind even if they are not assigned to a particular node</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 8
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2013-02-15 11:41:00.269
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">29294678</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">29327444</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2013-02-15 11:41:00.269</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 29294681
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 9
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2013-02-15 11:41:16.757
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">29294681</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">29327447</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2013-02-15 11:41:16.757</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 29294682
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Configure Apache to run on ports 445, 5001, and 500 in addition to the defaults</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# Edit apache ports file to listen on additional ports
vim /etc/apache/ports.conf
# It should look like the following:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
#NameVirtualHost *:80
Listen 80
Listen 81
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 10
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2013-02-15 16:15:26.834
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">29294682</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">29327448</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2013-02-15 16:15:26.834</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 30048258
Fecha creación: 2013-04-04 12:43:10.648
<property name="body"><p>Recently, we had a SLES10 server (AUTH1) that would not boot properly. &nbsp;It would try, and then get to a point where it said it was looking for the root device (/dev/sda2), and would eventually fail with an error similar to &quot;Waiting for device /dev/sda2 to appear&quot;. &nbsp;We ran the rescue procedure off the original boot media, to no avail. &nbsp;We reinstalled the boot record to the MBR, still nothing. &nbsp;Finally, I found a document on the web that explained what happened (missing driver in /etc/sysconfig/kernel under the INITRD_MODULES setting)</p><h1>SLE / OES system on VMware Vsphere not able to boot: waiting for device to appear</h1><p class="first">This document&nbsp;<strong>(7005233)</strong><em>&nbsp;is provided subject to the&nbsp;<a href="http://www.novell.com/support/kb/doc.php?id=7005233#disclaimer" style="text-decoration: underline;">disclaimer</a>&nbsp;at the end of this document.</em></p><h3>Environment</h3><div class="content">SUSE Linux Enterprise Server 10 Service Pack 3<br />Novell Open Enterprise Server 2 (OES 2) Linux Support Pack 2<br />VMware Vsphere version 4.0.0 build 208167<br />VMware Tools 4.0.0-208167</div><h3>Situation</h3><div class="content">After a reboot of a kernel update, the boot process shows<br /><br /><div><span>&nbsp;/dev/sda1 not found: ignoring</span><br /><span>waiting for sda2....... not responding</span></div><br />and does not continue.</div><h3>Resolution</h3><div class="content">Usually this error message indicates the driver for the block device providing the root device is missing which is also true in this situation. To solve this issue please proceed as follows:<br /><br /><ol><li>Attach any ISO of SLES10 to the virtual system and boot from it<br /><br /></li><li>Select rescue system from the installation menu and boot it<br /><br /></li><li>Log in as root<br /><br /></li><li>Run&nbsp;<br /><br /><span>fdisk -l&nbsp;</span><br /><br />to check whether the partitions are recognized properly<br /><br /></li><li>Execute:<br /><br /><span>mount /dev/sdXY /mnt</span><br /><br />to mount the root device. X is the letter of the device and Y the number of the partition.<br /><br /></li><li>Check if&nbsp;<span>/etc/sysconfig/kernel</span>&nbsp;has all required modules in the variable&nbsp;<span>INITRD_MODULES</span>. The entries should be similar to those:<br /><br /><span>INITRD_MODULES=&quot;piix mptspi processor thermal fan reiserfs dm_mod edd&quot;</span><br /><br />Note: As the root device was mounted inside the rescue system, the new path is<br /><br /><span>/mnt/etc/sysconfig/kernel</span><br /><br />To read the file, use the command<br /><br /><span>less /mnt/etc/sysconfig/kernel</span><br /><br />The INITRD_MODULES entry is usually found at the very top of this file. However, on VMware Vsphere it was observed that the entry at the top was removed completely and exchanged by a line at the very bottom of the file which looked like:<br /><br /><span># Beginning of the block added by the VMware software</span><br /><span>INITRD_MODULES=&quot;vmxnet &quot;</span><br /><span># End of the block added by the VMware software</span><br /><br />Thus all necessary modules to access the block device were removed, putting the system into a state not able to boot.<br /><br /></li><li>Adjust the line according to<br /><br /><span>INITRD_MODULES=&quot;piix mptspi processor thermal fan reiserfs dm_mod edd&quot;</span><br /><br />Add further modules if necessary.<br /><br /></li><li>The initrd needs to be recreated with the necessary modules. To do so, please execute:<br /><br /><span>mount -o bind /proc /mnt/proc</span><br /><span>mount -o bind /dev /mnt/dev</span><br /><span>mount -o bind /sys /mnt/sys</span><br /><span>chroot /mnt</span><br /><span>mkinitrd</span><br /><br /></li><li>The output of&nbsp;<span>mkinitrd</span>&nbsp;should be similar to this:<br /><br /><span># mkinitrd</span><br /><span>Root device:&nbsp;&nbsp;&nbsp; /dev/evms/lvm2/system/root (mounted on / as reiserfs)</span><br /><span>Module list:&nbsp;&nbsp;&nbsp;&nbsp; piix mptspi processor thermal fan reiserfs dm_mod edd dm_snapshot (xennet xenblk)</span><br /><br /><span>Kernel image:&nbsp;&nbsp; /boot/vmlinuz-2.6.16.60-0.54.5-smp</span><br /><span>Initrd image:&nbsp;&nbsp; /boot/initrd-2.6.16.60-0.54.5-smp</span><br /><span>Shared libs:&nbsp;&nbsp;&nbsp; lib/ld-2.4.so lib/libacl.so.1.1.0 lib/libattr.so.1.1.0 lib/libc-2.4.so lib/libdevmapper.so.1.02 lib/libdl-2.4.so lib/libevms-2.5.so.0.5 lib/libhistory.so.5.1 lib/libncurses.so.5.5 lib/libpthread-2.4.so lib/libreadline.so.5.1 lib/librt-2.4.so lib/libuuid.so.1.2 lib/libnss_files-2.4.so lib/libnss_files.so.2 lib/libgcc_s.so.1</span><br /><br /><span>Driver modules: ide-core ide-disk scsi_mod sd_mod piix scsi_transport_spi mptbase mptscsih mptspi processor thermal fan dm-mod edd dm-snapshot dm-mirror libata ahci ata_piix</span><br /><span>Filesystem modules:&nbsp;&nbsp;&nbsp;&nbsp; reiserfs</span><br /><span>Including:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; initramfs dm/evms2 evms2/disk fsck.reiserfs</span><br /><span>Bootsplash:&nbsp;&nbsp;&nbsp;&nbsp; SuSE-SLES (1152x864)</span><br /><span>19170 blocks</span><br /><br />Make sure the module list contains&nbsp;<span>mptspi</span>&nbsp;as this is the module for the virtual SCSI controller.&nbsp;<br /><br /></li><li>Once verified, exit the chroot environment, umount all mounted file systems and reboot:<br /><br />exit<br />umount /mnt/* # this is to umount proc, sys and dev in one go<br />umount /mnt&nbsp;&nbsp; # umount the root file system<br />reboot</li></ol></div></property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-04-04 12:43:10.648
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">30048258</id>
<property name="hibernateVersion">2</property>
<property name="title">SLES on VMware waiting for device to appear fix</property>
<property name="lowerTitle">sles on vmware waiting for device to appear fix</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">30081026</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">30113793</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454107</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-04-04 12:43:10.648</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-04-04 12:43:10.648</property>
<property name="versionComment" />
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 30474272
Fecha creación: 2012-02-10 10:37:11.000
<property name="body"><h3>Oracle production database servers (Red Hat or CentOS)</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude dsmsched.log
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude *_log
exclude *.log
exclude /tmp/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude.dir /lib
exclude.dir /lib64
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /usr/include
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/lib
exclude.dir /usr/lib64
exclude.dir /var/cache
exclude.dir /usr/src
exclude.dir /var/spool/cups
]] ></ac:plain-text-body></ac:macro><h3>Ubuntu Server</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 12
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-04 15:03:25.377
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">30474272</id>
<property name="hibernateVersion">2</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">30507038</id>
</element>
</collection>
<property name="version">12</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-04 15:03:25.377</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31064197
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Configure Apache to run on ports 445, 5001, and 5000 in addition to the defaults</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# Edit apache ports file to listen on additional ports
vim /etc/apache/ports.conf
# It should look like the following:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
#NameVirtualHost *:80
Listen 80
Listen 81
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo cp default-ssl api-ssl
sudo vim api-ssl
#
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 11
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2013-02-15 16:42:11.167
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31064197</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31096962</id>
</element>
</collection>
<property name="version">11</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2013-02-15 16:42:11.167</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31064200
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Configure Apache to run on ports 445, 5001, and 5000 in addition to the defaults</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# Edit apache ports file to listen on additional ports
vim /etc/apache/ports.conf
# It should look like the following:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
#NameVirtualHost *:80
Listen 80
Listen 81
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
Copy all files from working node (e.g. halb1) /etc/apache2/sites-available/
Remove default-ssl
Ensure default has correct site restrictions for server-status
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/ha.d/ha.cf
# Add the following
autojoin none
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 12
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-08-06 09:04:41.119
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31064200</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31096965</id>
</element>
</collection>
<property name="version">12</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-08-06 09:04:41.119</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31064203
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Configure Apache to run on ports 445, 5001, and 5000 in addition to the defaults</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# Edit apache ports file to listen on additional ports
vim /etc/apache/ports.conf
# It should look like the following:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
#NameVirtualHost *:80
Listen 80
Listen 81
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
Copy all files from working node (e.g. halb1) /etc/apache2/sites-available/
Remove default-ssl
Ensure default has correct site restrictions for server-status
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Copy working ha.cf file from another node (e.g. halb1), being sure to add your new node to the list. It should look something like this
sudo vim /etc/ha.d/ha.cf
autojoin any
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
node halb3
node halb4
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 13
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-08-06 09:08:32.284
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31064203</id>
<property name="hibernateVersion">2</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31096968</id>
</element>
</collection>
<property name="version">13</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-08-06 09:08:32.284</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31391868
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol>
<li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM</li>
<li>Use fdisk to create new partition on the disk.</li>
<li>Extend existing volume group onto new partition.</li>
<li>Extend existing logical volume onto new space.</li>
<li>Extend filesystem.</li>
</ol>
<p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p>
<ol>
<li>Physically put the disk in the server and make it available either in an array or some other way</li>
<li>Use fdisk to create new partition on the disk.
<ul>
<li>As root run fdisk on the new disk. For example you would run fdisk /dev/sdc.</li>
<li>On this new disk you will create a new partition. Inside of the fdisk program you create a new partition by typing the letter &quot;n&quot; followed by the enter key.</li>
<li>It will then ask you if you want it to be a primary partition or an extended partition. For this example we will just assume we want it to be a primary partition. To do this we type the letter &quot;p&quot; followed by the enter key.</li>
<li>Next it will ask for the starting point and ending point of this partition. For this example, we will simply select the defaults by hitting the enter key twice.</li>
<li>If you want to view the details of the new partition, you can type the letter &quot;p&quot; from the fdisk prompt.</li>
<li>Next we need to change the type for this new partition. We do this by typing the letter &quot;t&quot; followed by the enter key.</li>
<li>We need it to be of the Linux LVM type. The Hex code for Linux LVM is 8e. We type in &quot;8e&quot; followed by the enter key and it will tell us that it changed the system type for this partition to Linux LVM.</li>
<li>We then need to save these changes and exit fdisk. We do this by typing the letter &quot;w&quot; (for write) followed by the enter key.</li>
</ul>
</li>
<li>Use pvcreate to lay down the &quot;setup&quot; on the physical partition.
<ul>
<li>This sets up physical extents and other things that LVM needs. The command we run is &quot;pvcreate /dev/sdc1&quot;</li>
</ul>
</li>
<li>Extend existing volume group onto new partition.
<ul>
<li>For this example we are going to assume that we have an existing volume group named VolGroup00. We can display information about this volume group using the vgdisplay command. If we type &quot;vgdisplay&quot; without any arguments, it will display all the volume groups. If we just want information about the &quot;VolGroup00&quot; volume group, we would type &quot;vgdisplay VolGroup00&quot;.</li>
<li>To extend the VolGroup00 volume group onto the new partition, we use the vgextend command. Type &quot;vgextend VolGroup00 /dev/sdc1&quot; followed by the enter key</li>
</ul>
</li>
<li>Extend existing logical volume onto new space.
<ul>
<li>For this example we are going to assume that we have an existing logical volume on the VolGroup00 volume group that is named BACKUP. The full path to this logical volume would be &quot;/dev/mapper/VolGroup00-BACKUP&quot;. We can view information about this logical volume by typing &quot;lvdisplay /dev/mapper/VolGroup00-BACKUP&quot;.</li>
<li>To extend this existing logical volume onto the new space we use the lvextend command. Type &quot;lvextend -L +100G /dev/mapper/VolGroup00-BACKUP /dev/sdc1&quot;. This command says that we want to increase the logical volume by 100GB. This is only possible if /dev/sdc1 is a member of volume group VolGroup00 and there is enough free disk space on it.</li>
</ul>
</li>
<li>The last thing we need to do is increase the filesystem.
<ul>
<li>Which command we use to increase the filesystem depends on what filesystem type we are currently using.&nbsp; If we are using ext3, we will use either the &quot;ext2online&quot; or the &quot;resize2fs&quot; command. On RHEL 5, we can use the &quot;resize2fs&quot; command, which will recognize that the filesystem is currently mounted and perform an &quot;on-line&quot; resize.</li>
<li>On both resize_reiserfs and ext2online, the size is optional. If we want the filesystem to take up all the available space on our logical volume, we don't need to put the size. To extend the filesystem type &quot;resize2fs /dev/mapper/VolGroup00-BACKUP&quot;.</li>
</ul>
</li>
</ol>
</property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-03 11:21:23.000
versionComment: Migrated to Confluence 4.0
originalVersion: 13795381
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31391868</id>
<property name="hibernateVersion">2</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424635</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-03 11:21:23.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392067
Fecha creación: 2011-11-16 08:49:08.000
<property name="body"><h2>Check the location of all resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_mon -1
]] ></ac:plain-text-body></ac:macro><h2>Migrate a resource to another node</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:macro><h2>Move a resource back to its normal location</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:macro><h3>List resources</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource --list]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h3>Stop a running resource and everything that depends on it (in order to delete it)</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ crm_resource --resource <resource_name_from_list> --set-parameter target-role --meta --parameter-value Stopped]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-18 15:02:15.851
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392067</id>
<property name="hibernateVersion">2</property>
<property name="title">Routine Cluster Tasks</property>
<property name="lowerTitle">routine cluster tasks</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424834</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-18 15:02:15.851</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392092
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:structured-macro ac:macro-id="668d062d-2687-407f-9d0e-a55f95e19db1" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#apt-get remove haproxy apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common
Next, create a directory /usr/share/haproxy
#mkdir -p /usr/share/haproxy]] ></ac:plain-text-body></ac:structured-macro><p>Next, install the following packages:</p><ac:structured-macro ac:macro-id="c19059f1-d572-4d8e-801d-bad819134471" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev libpcre3-dev socat]] ></ac:plain-text-body></ac:structured-macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:structured-macro ac:macro-id="9a62f2a4-df34-43ad-aa15-b03e1b21c8dd" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>Copy the SSL certs from an existing working node in /etc/ssl/localcerts</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:structured-macro ac:macro-id="547caa71-8b97-4e91-a2af-916e6a8b45c4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:structured-macro ac:macro-id="1fca2111-4429-4321-9671-20cb53692faf" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:structured-macro ac:macro-id="4905cbe4-e075-46d3-976c-4a6ed93cf0a0" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:structured-macro ac:macro-id="9777dd08-d064-4866-bb0c-8d93ebc19ff7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/*.diff .]] ></ac:plain-text-body></ac:structured-macro><p><br />5- Run the following command to patch up to latest level:</p><ac:structured-macro ac:macro-id="69a8fa7b-9ca0-478a-b3aa-730d1dcfe578" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:structured-macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:structured-macro ac:macro-id="f7830057-c896-4ffa-9ffa-69ebea41c3e2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:structured-macro ac:macro-id="27375dca-2981-4d43-bf3d-e05a9f01040a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:structured-macro ac:macro-id="6de55d12-b1ca-4ac6-9ae8-a798698f9158" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:structured-macro><p>10- Link the new executable to the traditional location of haproxy</p><ac:structured-macro ac:macro-id="0a58261b-78b5-418e-bd00-7b311aead620" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ #ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy]] ></ac:plain-text-body></ac:structured-macro><p>11- Make a directory for haproxy to chroot to:</p><ac:structured-macro ac:macro-id="ba976bca-3c0f-4d34-b0fc-9aaf9f93f409" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#mkdir /usr/share/haproxy
Note: if you haven't already had haproxy installed, you'll need to create directory /etc/haproxy/errors and copy the default error files in from the haproxy build directory:
#cp ~/haproxy-1.5-dev19/examples/errorfiles/* /etc/haproxy/errors]] ></ac:plain-text-body></ac:structured-macro><p>12- Restart services</p><ac:structured-macro ac:macro-id="3864159c-4446-47bb-88bb-1099907d81c2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#service haproxy restart]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>As of November 12, 2013, we are using the development branch (1.5x) of haproxy, which terminates SSL on its own, without the need for Apache or any other piece. &nbsp;This config file WILL NOT WORK with versions prior to 1.5x. &nbsp;Our config looks like this:</p><ac:structured-macro ac:macro-id="6ce02417-a055-4d6a-973d-89f3fce79ec9" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 10000
chroot /usr/share/haproxy
stats socket /var/run/haproxy.stat mode 600 level operator
user haproxy
group haproxy
#debug
#quiet
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
maxconn 10000
contimeout 5000
clitimeout 600000
srvtimeout 600000
errorfile 503 /etc/haproxy/errors/503.http
listen admin:8001 :8001
mode http
stats uri /
peers stickypeers
peer halb3 134.250.12.144:9099
peer halb4 134.250.12.145:9099
frontend api
bind 134.250.12.141:80
bind 134.250.12.141:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal-api
backend portal-api
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 5000 check
server api2 134.250.5.25:8080 maxconn 5000 check
frontend xe
bind 134.250.12.167:80
bind 134.250.12.167:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend banner-xe
backend banner-xe
stick-table type ip size 500k expire 8h peers stickypeers
stick on src
stick store-request src
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /
server birchxe 134.250.8.19:8080 maxconn 5000 check
server maplexe 134.250.8.20:8080 maxconn 5000 check
frontend my
bind 134.250.12.8:80
bind 134.250.12.8:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal
backend portal
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk
server portal1 134.250.8.3:80 check
server portal2 134.250.8.4:80 check
# server portal3 134.250.8.5:80 check
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 8
version: 10
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-09-12 15:58:37.560
versionComment: Migrated to Confluence 5.3
contentStatus: deleted
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
<property name="hibernateVersion">8</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424859</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">33325058</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">33325057</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454021</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-09-12 15:58:37.560</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">33259522</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392129</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392131</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392133</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392127</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392207</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392162</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392225</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585174</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 31392127
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>This assumes you have already compiled and installed at least once.</p><p>&nbsp;</p><p>1- Get a clean directory of latest haproxy dev release from tar.gz file<br />2- Get a clean directory of latest patches from tar.gz file<br />3- cd into the haproxy folder you extracted (not the patch directory)<br />4- Copy all patches from the patch directory into the haproxy directory i.e. cp ../haproxy-patches/00*.diff .<br />5- Run the following command to patch up to latest level:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:macro><p><br /><br /></p><p>6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</p><p>7- Remove all the diff files in your current directory</p><p>8- Run the following to compile the new build of HAProxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>9- run the following to install it</p><p>make install</p></property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-11-07 13:40:18.691
originalVersion: 31392092
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392127</id>
<property name="hibernateVersion">2</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424893</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-11-07 13:40:18.691</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392129
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get remove haproxy]] ></ac:plain-text-body></ac:macro><p>Next, install the following packages:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev git libpcre3-dev socat]] ></ac:plain-text-body></ac:macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/00*.diff .]] ></ac:plain-text-body></ac:macro><p><br />5- Run the following command to patch up to latest level:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-11-12 15:39:06.681
originalVersion: 31392092
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392129</id>
<property name="hibernateVersion">2</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424895</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-11-12 15:39:06.681</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392131
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get remove haproxy]] ></ac:plain-text-body></ac:macro><p>Next, install the following packages:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev git libpcre3-dev socat]] ></ac:plain-text-body></ac:macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/00*.diff .]] ></ac:plain-text-body></ac:macro><p><br />5- Run the following command to patch up to latest level:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:macro><p>10- Link the new executable to the traditional location of haproxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-11-12 15:40:54.073
originalVersion: 31392092
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392131</id>
<property name="hibernateVersion">2</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424897</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-11-12 15:40:54.073</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392133
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get remove haproxy]] ></ac:plain-text-body></ac:macro><p>Next, install the following packages:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev git libpcre3-dev socat]] ></ac:plain-text-body></ac:macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/00*.diff .]] ></ac:plain-text-body></ac:macro><p><br />5- Run the following command to patch up to latest level:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:macro><p>10- Link the new executable to the traditional location of haproxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ #ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy]] ></ac:plain-text-body></ac:macro><p>11- Make a directory for haproxy to chroot to:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#mkdir /usr/share/haproxy
Note: if you haven't already had haproxy installed, you'll need to create directory /etc/haproxy/errors and copy the default error files in from the haproxy build directory:
#cp ~/haproxy-1.5-dev19/examples/errorfiles/* /etc/haproxy/errors]] ></ac:plain-text-body></ac:macro><p>12- Restart services</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#service haproxy restart]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-11-12 15:46:48.302
originalVersion: 31392092
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392133</id>
<property name="hibernateVersion">2</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424899</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-11-12 15:46:48.302</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392135
Fecha creación: 2011-11-16 08:49:08.000
<property name="body"><h2>Check the location of all resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_mon -1
]] ></ac:plain-text-body></ac:macro><h2>Migrate a resource to another node</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:macro><h2>Move a resource back to its normal location</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:macro><h3>List resources</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource --list]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h3>Stop a running resource and everything that depends on it (in order to delete it)</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ crm_resource --resource <resource_name_from_list> --set-parameter target-role --meta --parameter-value Stopped]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-10-25 15:27:53.925
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392135</id>
<property name="hibernateVersion">2</property>
<property name="title">Routine Cluster Tasks (haproxy)</property>
<property name="lowerTitle">routine cluster tasks (haproxy)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424901</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-10-25 15:27:53.925</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392160
Fecha creación: 2011-11-16 08:49:08.000
<property name="body"><h2>Check the location of all resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_mon -1
]] ></ac:plain-text-body></ac:macro><h2>Migrate a resource to another node</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:macro><h2>Move a resource back to its normal location</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:macro><h2>List resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource --list]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Stop a running resource and everything that depends on it (in order to delete it)</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ crm_resource --resource <resource_name_from_list> --set-parameter target-role --meta --parameter-value Stopped]] ></ac:plain-text-body></ac:macro><p>Check status of sticky table (must have haproxy.stat entry in haproxy.config)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[(Returned IP address removed for security)
#socat readline /var/run/haproxy.stat
prompt
>show table
# table: banner-xe, type: ip, size:512000, used:1
>show table banner-xe
# table: banner-xe, type: ip, size:512000, used:1
0x130df64: key=134.250.x.x use=0 exp=23192485 server_id=1]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 6
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-11-12 15:59:02.169
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392160</id>
<property name="hibernateVersion">2</property>
<property name="title">Routine Cluster Tasks (haproxy)</property>
<property name="lowerTitle">routine cluster tasks (haproxy)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424926</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-11-12 15:59:02.169</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392162
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get remove haproxy]] ></ac:plain-text-body></ac:macro><p>Next, install the following packages:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev git libpcre3-dev socat]] ></ac:plain-text-body></ac:macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/00*.diff .]] ></ac:plain-text-body></ac:macro><p><br />5- Run the following command to patch up to latest level:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:macro><p>10- Link the new executable to the traditional location of haproxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ #ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy]] ></ac:plain-text-body></ac:macro><p>11- Make a directory for haproxy to chroot to:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#mkdir /usr/share/haproxy
Note: if you haven't already had haproxy installed, you'll need to create directory /etc/haproxy/errors and copy the default error files in from the haproxy build directory:
#cp ~/haproxy-1.5-dev19/examples/errorfiles/* /etc/haproxy/errors]] ></ac:plain-text-body></ac:macro><p>12- Restart services</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#service haproxy restart]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>As of November 12, 2013, we are using the development branch (1.5x) of haproxy, which terminates SSL on its own, without the need for Apache or any other piece. &nbsp;This config file WILL NOT WORK with versions prior to 1.5x. &nbsp;Our config looks like this:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 10000
chroot /usr/share/haproxy
stats socket /var/run/haproxy.stat mode 600 level operator
user haproxy
group haproxy
#debug
#quiet
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
maxconn 10000
contimeout 5000
clitimeout 600000
srvtimeout 600000
errorfile 503 /etc/haproxy/errors/503.http
listen admin:8001 :8001
mode http
stats uri /
peers stickypeers
peer halb3 134.250.12.144:9099
peer halb4 134.250.12.145:9099
frontend api
bind 134.250.12.141:80
bind 134.250.12.141:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal-api
backend portal-api
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 5000 check
server api2 134.250.5.25:8080 maxconn 5000 check
frontend xe
bind 134.250.12.167:80
bind 134.250.12.167:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend banner-xe
backend banner-xe
stick-table type ip size 500k expire 8h peers stickypeers
stick on src
stick store-request src
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /
server birchxe 134.250.8.19:8080 maxconn 5000 check
server maplexe 134.250.8.20:8080 maxconn 5000 check
frontend my
bind 134.250.12.8:80
bind 134.250.12.8:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal
backend portal
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk
server portal1 134.250.8.3:80 check
server portal2 134.250.8.4:80 check
# server portal3 134.250.8.5:80 check
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-11-12 15:49:34.803
originalVersion: 31392092
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392162</id>
<property name="hibernateVersion">1</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424928</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-11-12 15:49:34.803</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392207
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get remove haproxy apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common]] ></ac:plain-text-body></ac:macro><p>Next, install the following packages:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev git libpcre3-dev socat]] ></ac:plain-text-body></ac:macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:macro><p>Copy the SSL certs from an existing working node in /etc/ssl/localcerts</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/00*.diff .]] ></ac:plain-text-body></ac:macro><p><br />5- Run the following command to patch up to latest level:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:macro><p>10- Link the new executable to the traditional location of haproxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ #ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy]] ></ac:plain-text-body></ac:macro><p>11- Make a directory for haproxy to chroot to:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#mkdir /usr/share/haproxy
Note: if you haven't already had haproxy installed, you'll need to create directory /etc/haproxy/errors and copy the default error files in from the haproxy build directory:
#cp ~/haproxy-1.5-dev19/examples/errorfiles/* /etc/haproxy/errors]] ></ac:plain-text-body></ac:macro><p>12- Restart services</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#service haproxy restart]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>As of November 12, 2013, we are using the development branch (1.5x) of haproxy, which terminates SSL on its own, without the need for Apache or any other piece. &nbsp;This config file WILL NOT WORK with versions prior to 1.5x. &nbsp;Our config looks like this:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 10000
chroot /usr/share/haproxy
stats socket /var/run/haproxy.stat mode 600 level operator
user haproxy
group haproxy
#debug
#quiet
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
maxconn 10000
contimeout 5000
clitimeout 600000
srvtimeout 600000
errorfile 503 /etc/haproxy/errors/503.http
listen admin:8001 :8001
mode http
stats uri /
peers stickypeers
peer halb3 134.250.12.144:9099
peer halb4 134.250.12.145:9099
frontend api
bind 134.250.12.141:80
bind 134.250.12.141:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal-api
backend portal-api
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 5000 check
server api2 134.250.5.25:8080 maxconn 5000 check
frontend xe
bind 134.250.12.167:80
bind 134.250.12.167:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend banner-xe
backend banner-xe
stick-table type ip size 500k expire 8h peers stickypeers
stick on src
stick store-request src
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /
server birchxe 134.250.8.19:8080 maxconn 5000 check
server maplexe 134.250.8.20:8080 maxconn 5000 check
frontend my
bind 134.250.12.8:80
bind 134.250.12.8:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal
backend portal
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk
server portal1 134.250.8.3:80 check
server portal2 134.250.8.4:80 check
# server portal3 134.250.8.5:80 check
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-11-20 16:18:51.904
originalVersion: 31392092
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392207</id>
<property name="hibernateVersion">1</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424972</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-11-20 16:18:51.904</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31392225
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get remove haproxy apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common]] ></ac:plain-text-body></ac:macro><p>Next, install the following packages:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev git libpcre3-dev socat]] ></ac:plain-text-body></ac:macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:macro><p>Copy the SSL certs from an existing working node in /etc/ssl/localcerts</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/*.diff .]] ></ac:plain-text-body></ac:macro><p><br />5- Run the following command to patch up to latest level:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:macro><p>10- Link the new executable to the traditional location of haproxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ #ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy]] ></ac:plain-text-body></ac:macro><p>11- Make a directory for haproxy to chroot to:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#mkdir /usr/share/haproxy
Note: if you haven't already had haproxy installed, you'll need to create directory /etc/haproxy/errors and copy the default error files in from the haproxy build directory:
#cp ~/haproxy-1.5-dev19/examples/errorfiles/* /etc/haproxy/errors]] ></ac:plain-text-body></ac:macro><p>12- Restart services</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#service haproxy restart]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>As of November 12, 2013, we are using the development branch (1.5x) of haproxy, which terminates SSL on its own, without the need for Apache or any other piece. &nbsp;This config file WILL NOT WORK with versions prior to 1.5x. &nbsp;Our config looks like this:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 10000
chroot /usr/share/haproxy
stats socket /var/run/haproxy.stat mode 600 level operator
user haproxy
group haproxy
#debug
#quiet
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
maxconn 10000
contimeout 5000
clitimeout 600000
srvtimeout 600000
errorfile 503 /etc/haproxy/errors/503.http
listen admin:8001 :8001
mode http
stats uri /
peers stickypeers
peer halb3 134.250.12.144:9099
peer halb4 134.250.12.145:9099
frontend api
bind 134.250.12.141:80
bind 134.250.12.141:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal-api
backend portal-api
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 5000 check
server api2 134.250.5.25:8080 maxconn 5000 check
frontend xe
bind 134.250.12.167:80
bind 134.250.12.167:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend banner-xe
backend banner-xe
stick-table type ip size 500k expire 8h peers stickypeers
stick on src
stick store-request src
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /
server birchxe 134.250.8.19:8080 maxconn 5000 check
server maplexe 134.250.8.20:8080 maxconn 5000 check
frontend my
bind 134.250.12.8:80
bind 134.250.12.8:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal
backend portal
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk
server portal1 134.250.8.3:80 check
server portal2 134.250.8.4:80 check
# server portal3 134.250.8.5:80 check
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-12-17 10:17:21.359
originalVersion: 31392092
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392225</id>
<property name="hibernateVersion">1</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31424989</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-12-17 10:17:21.359</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31850562
Fecha creación: 2014-01-23 11:35:05.334
<property name="body"><p>We recently discovered we needed a newer version of VIM than what was provided by even the latest Red Hat Enterpise distro (5.10). &nbsp;This is how we installed the latest version:</p><p>&nbsp;</p><p>As root:</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-01-23 11:35:05.334
contentStatus: deleted
space: 3014657
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31850562</id>
<property name="hibernateVersion">2</property>
<property name="title">Install VIM from source</property>
<property name="lowerTitle">install vim from source</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31883329</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2014-01-23 11:35:05.334</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-01-23 11:35:05.334</property>
<property name="versionComment" />
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 31850650
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tivoli
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder on Sherpa and do the following:
#apt-get install alien ksh ia32-libs* gawk
*64-bit hosts only
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
If it doesn't work, proceed to the......
HARD WAY: (recompiling from scratch)
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 54
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-06-04 08:44:31.526
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31850650</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31883407</id>
</element>
</collection>
<property name="version">54</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-06-04 08:44:31.526</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31850652
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tsm
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tsm
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tsm.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder on Sherpa and do the following:
#apt-get install alien ksh ia32-libs* gawk
*64-bit hosts only
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
If it doesn't work, proceed to the......
HARD WAY: (recompiling from scratch)
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 55
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-02-24 10:54:17.817
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31850652</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31883409</id>
</element>
</collection>
<property name="version">55</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-02-24 10:54:17.817</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 31850655
Fecha creación: 2008-03-06 15:37:40.000
<property name="body"><h2>First Step</h2><h5>If IP is assigned by DHCP, make sure /etc/hosts file looks like this:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername]] ></ac:plain-text-body></ac:macro><h5>If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
Ubuntu:
127.0.0.1 localhost
127.0.1.1 yourserver
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
]] ></ac:plain-text-body></ac:macro><h2>UBUNTU Step - populate /etc/hostname with short hostname</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[yourserver]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Second Step</h2><h5>If you need the change to happen immediately without a reboot, run the following command as root:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#hostname yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Third Step</h2><h5>This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fourth Step</h2><h5>Edit the /etc/sysconfig/network file HOSTNAME line to read:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/sysconfig/network</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[HOSTNAME=yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fifth Step</h2><h5>As root, run the following command:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
]] ></ac:plain-text-body></ac:macro><h2>Sixth Step</h2><h5>Red Hat - Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet]] ></ac:plain-text-body></ac:macro><h5>Ubuntu - Edit the /etc/network/interfaces</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 134.250.x.x
netmask 255.255.255.0
network 134.250.x.0
broadcast 134.250.x.255
gateway 134.250.x.1
dns-nameservers 134.250.2.3 134.250.6.3
dns-search suu.edu]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Finally, reboot.</h2></property>
hibernateVersion: 1
version: 10
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-09-26 16:10:37.424
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">31850655</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change host name and ip address</property>
<property name="lowerTitle">how to properly change host name and ip address</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">31883412</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-09-26 16:10:37.424</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 32702685
Fecha creación: 2008-03-06 15:37:40.000
<property name="body"><h2>First Step</h2><h5>If IP is assigned by DHCP, make sure /etc/hosts file looks like this:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername]] ></ac:plain-text-body></ac:macro><h5>If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
Ubuntu:
127.0.0.1 localhost
127.0.1.1 yourserver
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
]] ></ac:plain-text-body></ac:macro><h2>UBUNTU Step - populate /etc/hostname with short hostname</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[yourserver]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Second Step</h2><h5>If you need the change to happen immediately without a reboot, run the following command as root:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#hostname yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Third Step</h2><h5>This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fourth Step</h2><h5>Edit the /etc/sysconfig/network file HOSTNAME line to read:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/sysconfig/network</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[HOSTNAME=yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fifth Step</h2><h5>As root, run the following command:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
]] ></ac:plain-text-body></ac:macro><h2>Sixth Step</h2><h5>Red Hat - Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet]] ></ac:plain-text-body></ac:macro><h5>Ubuntu - Edit the /etc/network/interfaces (also /etc/networks with proper localnet)</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 134.250.x.x
netmask 255.255.255.0
network 134.250.x.0
broadcast 134.250.x.255
gateway 134.250.x.1
dns-nameservers 134.250.2.3 134.250.6.3
dns-search suu.edu]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Finally, reboot.</h2></property>
hibernateVersion: 2
version: 11
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-02-27 08:24:48.287
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">32702685</id>
<property name="hibernateVersion">2</property>
<property name="title">How to properly change host name and ip address</property>
<property name="lowerTitle">how to properly change host name and ip address</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">32768217</id>
</element>
</collection>
<property name="version">11</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-02-27 08:24:48.287</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 32702718
Fecha creación: 2011-11-16 08:49:08.000
<property name="body"><h2>Check the location of all resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_mon -1
]] ></ac:plain-text-body></ac:macro><h2>Migrate a resource to another node</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:macro><h2>Move a resource back to its normal location</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:macro><h2>List resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource --list]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Stop a running resource and everything that depends on it (in order to delete it)</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ crm_resource --resource <resource_name_from_list> --set-parameter target-role --meta --parameter-value Stopped]] ></ac:plain-text-body></ac:macro><p>Check status of sticky table (must have haproxy.stat entry in haproxy.config)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[(Returned IP address removed for security)
#socat readline /var/run/haproxy.stat
prompt
>show table
# table: banner-xe, type: ip, size:512000, used:1
>show table banner-xe
# table: banner-xe, type: ip, size:512000, used:1
0x130df64: key=134.250.x.x use=0 exp=23192485 server_id=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Delete a resource</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -D -r my_first_ip -t primitive]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 3
version: 7
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2013-11-19 17:30:23.350
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">32702718</id>
<property name="hibernateVersion">3</property>
<property name="title">Routine Cluster Tasks (haproxy)</property>
<property name="lowerTitle">routine cluster tasks (haproxy)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">32768250</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2013-11-19 17:30:23.350</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 32702719
Fecha creación: 2011-11-16 08:49:08.000
<property name="body"><h2>Check the location of all resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_mon -1
]] ></ac:plain-text-body></ac:macro><h2>Migrate a resource to another node</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:macro><h2>Move a resource back to its normal location</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:macro><h2>List resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource --list]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Stop a running resource and everything that depends on it (in order to delete it)</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ crm_resource --resource <resource_name_from_list> --set-parameter target-role --meta --parameter-value Stopped]] ></ac:plain-text-body></ac:macro><p>Check status of sticky table (must have haproxy.stat entry in haproxy.config)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[(Returned IP address removed for security)
#socat readline /var/run/haproxy.stat
prompt
>set timeout cli 1d
>show table
# table: banner-xe, type: ip, size:512000, used:1
>show table banner-xe
# table: banner-xe, type: ip, size:512000, used:1
0x130df64: key=134.250.x.x use=0 exp=23192485 server_id=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Delete a resource</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -D -r my_first_ip -t primitive]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 3
version: 8
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-08-14 11:31:09.531
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">32702719</id>
<property name="hibernateVersion">3</property>
<property name="title">Routine Cluster Tasks (haproxy)</property>
<property name="lowerTitle">routine cluster tasks (haproxy)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">32768251</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-08-14 11:31:09.531</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 33259522
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get remove haproxy apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common]] ></ac:plain-text-body></ac:macro><p>Next, install the following packages:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev libpcre3-dev socat]] ></ac:plain-text-body></ac:macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:macro><p>Copy the SSL certs from an existing working node in /etc/ssl/localcerts</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/*.diff .]] ></ac:plain-text-body></ac:macro><p><br />5- Run the following command to patch up to latest level:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:macro><p>10- Link the new executable to the traditional location of haproxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ #ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy]] ></ac:plain-text-body></ac:macro><p>11- Make a directory for haproxy to chroot to:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#mkdir /usr/share/haproxy
Note: if you haven't already had haproxy installed, you'll need to create directory /etc/haproxy/errors and copy the default error files in from the haproxy build directory:
#cp ~/haproxy-1.5-dev19/examples/errorfiles/* /etc/haproxy/errors]] ></ac:plain-text-body></ac:macro><p>12- Restart services</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#service haproxy restart]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>As of November 12, 2013, we are using the development branch (1.5x) of haproxy, which terminates SSL on its own, without the need for Apache or any other piece. &nbsp;This config file WILL NOT WORK with versions prior to 1.5x. &nbsp;Our config looks like this:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 10000
chroot /usr/share/haproxy
stats socket /var/run/haproxy.stat mode 600 level operator
user haproxy
group haproxy
#debug
#quiet
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
maxconn 10000
contimeout 5000
clitimeout 600000
srvtimeout 600000
errorfile 503 /etc/haproxy/errors/503.http
listen admin:8001 :8001
mode http
stats uri /
peers stickypeers
peer halb3 134.250.12.144:9099
peer halb4 134.250.12.145:9099
frontend api
bind 134.250.12.141:80
bind 134.250.12.141:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal-api
backend portal-api
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 5000 check
server api2 134.250.5.25:8080 maxconn 5000 check
frontend xe
bind 134.250.12.167:80
bind 134.250.12.167:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend banner-xe
backend banner-xe
stick-table type ip size 500k expire 8h peers stickypeers
stick on src
stick store-request src
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /
server birchxe 134.250.8.19:8080 maxconn 5000 check
server maplexe 134.250.8.20:8080 maxconn 5000 check
frontend my
bind 134.250.12.8:80
bind 134.250.12.8:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal
backend portal
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk
server portal1 134.250.8.3:80 check
server portal2 134.250.8.4:80 check
# server portal3 134.250.8.5:80 check
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-12-26 09:57:14.444
originalVersion: 31392092
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">33259522</id>
<property name="hibernateVersion">1</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">33292290</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-12-26 09:57:14.444</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 33259524
Fecha creación: 2011-11-16 08:49:08.000
<property name="body"><h2>Check the location of all resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_mon -1
]] ></ac:plain-text-body></ac:macro><h2>Migrate a resource to another node</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:macro><h2>Move a resource back to its normal location</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:macro><h2>List resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource --list]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Stop a running resource and everything that depends on it (in order to delete it)</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ crm_resource --resource <resource_name_from_list> --set-parameter target-role --meta --parameter-value Stopped]] ></ac:plain-text-body></ac:macro><h2>Check status of sticky table (must have haproxy.stat entry in haproxy.config)</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[(Returned IP address removed for security)
#socat readline /var/run/haproxy.stat
prompt
>set timeout cli 1d
>show table
# table: banner-xe, type: ip, size:512000, used:1
>show table banner-xe
# table: banner-xe, type: ip, size:512000, used:1
0x130df64: key=134.250.x.x use=0 exp=23192485 server_id=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Delete a resource</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -D -r my_first_ip -t primitive]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 9
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-08-14 11:31:51.220
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">33259524</id>
<property name="hibernateVersion">2</property>
<property name="title">Routine Cluster Tasks (haproxy)</property>
<property name="lowerTitle">routine cluster tasks (haproxy)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">33292292</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-08-14 11:31:51.220</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 33456167
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found on the Install volume (\\image1\install) in the \Tivoli\Linux or \Tivoli\Windows directory</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tsm
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tsm
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tsm.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Next, register a new node on the tsm server (only for traditional backups, NOT full VMs)</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[register node <nodename> <password> passe=0 do=standard url=http://<host.suu.edu>:1581 clo={windows|linux}]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h4>Then, configure the schedule via the GUI at&nbsp;<a href="https://tsm.suu.edu:16311/ibm/console">https://tsm.suu.edu:16311/ibm/console</a></h4><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder on Sherpa and do the following:
#apt-get install alien ksh ia32-libs* gawk
*64-bit hosts only
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
If it doesn't work, proceed to the......
HARD WAY: (recompiling from scratch)
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 1
version: 56
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-02-24 11:02:29.610
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">33456167</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">33488934</id>
</element>
</collection>
<property name="version">56</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-02-24 11:02:29.610</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 33718274
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found at ftp://archive.suu.edu/clients</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tsm
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tsm
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tsm.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Next, register a new node on the tsm server (only for traditional backups, NOT full VMs)</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[register node <nodename> <password> passe=0 do=standard url=http://<host.suu.edu>:1581 clo={windows|linux}]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h4>Then, configure the schedule via the GUI at&nbsp;<a href="https://tsm.suu.edu:16311/ibm/console">https://tsm.suu.edu:16311/ibm/console</a></h4><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder on Sherpa and do the following:
#apt-get install alien ksh ia32-libs* gawk
*64-bit hosts only
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
If it doesn't work, proceed to the......
HARD WAY: (recompiling from scratch)
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 1
version: 57
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-11-12 08:39:10.410
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">33718274</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">33751042</id>
</element>
</collection>
<property name="version">57</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-11-12 08:39:10.410</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 34832415
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol><li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM</li><li>Use fdisk to create new partition on the disk.</li><li>Extend existing volume group onto new partition.</li><li>Extend existing logical volume onto new space.</li><li>Extend filesystem.</li></ol><p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p><ol><li>fdisk /dev/sdc</li><li>n</li><li>p</li><li>1</li><li>t</li><li>8e</li><li>w</li><li>pvcreate /dev/sdc1</li><li>vgdisplay (to get volgroupname)</li><li>vgextend &lt;volgroupname&gt; /dev/sdc1</li><li>lvdisplay (to get name of logical volume you want to extend)</li><li>lvextend -L +10G &lt;lvname&gt; /dev/sdc1 &nbsp;(this will extend the volume by 10 gigabytes. &nbsp;If you want to use the whole disk, just take out the -L +10G part)</li><li>resize2fs &lt;lvname&gt;</li></ol><p>Done - verify new size</p></property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-09-11 12:39:44.877
originalVersion: 13795381
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">34832415</id>
<property name="hibernateVersion">1</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">34865183</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-09-11 12:39:44.877</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 35323934
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found at ftp://archive.suu.edu/clients</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tsm
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tsm
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tsm.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Next, register a new node on the tsm server (only for traditional backups, NOT full VMs)</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[register node <nodename> <password> passe=0 do=standard url=http://<host.suu.edu>:1581 clo={windows|linux}]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h4>Then, configure the schedule via the GUI at&nbsp;<a href="https://tsm.suu.edu:16311/ibm/console">https://tsm.suu.edu:16311/ibm/console</a></h4><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><h2>Ubuntu Server Notes</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Installing TSM Client V6.6.2 on Ubuntu 11.10 Server 64-bit
THE EASY WAY:
Grab the precompiled deb files under the Tivoli folder on Sherpa and do the following:
#apt-get install alien ksh ia32-libs* gawk
*64-bit hosts only
#dpkg -i gskcrypt32*.deb
#dpkg -i gskssl*.deb
#dpkg -i TIV*.deb
You need to add the path to the dsm binary directory to the file /etc/ld.so.conf:
/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
Then run:
#ldconfig
Next, fix a path issue to the language file:
#cd /opt/tivoli/tsm/client/ba/bin
#ln -s ../../lang/EN_US/
At this point, you should be able to run dsmc
If it doesn't work, proceed to the......
HARD WAY: (recompiling from scratch)
1) get the latest client - modify version numbers as needed
wget "ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v5r5/Linux/LinuxX86/v553/5.5.3.0-TIV-TSMBAC-LinuxX86.tar"
** NOTE - execute "sudo su -" prior to running the following build and install. Otherwise, permissions get jacked
2) apt-get install alien ksh ia32-libs* gawk
* only if installing on 64-bit host
3) unpack the archive
tar xvf 5.5.3.0-TIV-TSMBAC-LinuxX86.tar
4) unpack the RPM archives (ignore warnings re scripts)
alien -g TIVsm-API.i386.rpm
alien -g TIVsm-BA.i386.rpm
5) change directory names
mv TIVsm-API-5.5.3/debian TIVsm-API-5.5.3/DEBIAN
mv TIVsm-BA-5.5.3/debian TIVsm-BA-5.5.3/DEBIAN
6) edit the control files
vi TIVsm-API-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-api
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-api
Architecture: amd64
Depends:
Description: the API IBM Tivoli Storage Manager API
Version: 5.5.3
<blank line>
Save and exit the file.
vi TIVsm-BA-5.5.3/DEBIAN/control
Your edited file should look like the following: (be sure to leave one blank line at the end of the file)
Source: tivsm-ba
Section: alien
Priority: extra
Maintainer: Josh Foremaster <foremaster@suu.edu>
Package: tivsm-ba
Architecture: amd64
Depends:
Description: the Backup Archive Client IBM Tivoli Storage Manager Client
Version: 5.5.3
<blank line>
Save and exit the file
7) create *.deb packages
dpkg -b TIVsm-API-5.5.3
dpkg -b TIVsm-BA-5.5.3
8) install *.deb packages
dpkg -i TIVsm-API-5.5.3.deb
dpkg -i TIVsm-BA-5.5.3.deb
9) mkdir -p /var/lock/subsys
touch /var/lock/subsys/tivoli
10) create/modify TSM configuration files
(use examples listed above)
vi /opt/tivoli/tsm/client/ba/bin/dsm.opt
vi /opt/tivoli/tsm/client/ba/bin/dsm.sys
12) Link the necessary shared libraries:
add the dsm binary path on a line in the file /etc/ld.so.conf
/opt/tivoli/tsm/client/api/bin
import the shared objects using the command
ldconfig
cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
13) run an incremental backup
dsmc incremental
14) start the TSM scheduler
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h3>Resetting encryption password:</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[If you ever accidentally enter the wrong encryption key on initial setup, you can have it re-prompt you by doing the following:
# service suu_tivoli stop
# rm /etc/adsm/TSM.PWD
# service suu_tivoli start
# dsmc s /etc/inittab (or any other small file)
You will be prompted for nodename, and then node password. Once you've logged in, it will prompt you about the Encryption Key, at which point you select 1, and enter the key twice. If the backup completes successfully, you can move on to creating a full backup.]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 58
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-11-12 10:22:52.135
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">35323934</id>
<property name="hibernateVersion">2</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">35356702</id>
</element>
</collection>
<property name="version">58</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-11-12 10:22:52.135</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37584942
Fecha creación: 2010-03-22 08:10:10.000
<property name="body"><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename MARKETPLACE
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-02-08 09:58:36.000
versionComment: Migrated to Confluence 4.0
originalVersion: 17138072
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584942</id>
<property name="hibernateVersion">2</property>
<property name="title">Example Tivoli dsm.sys file for Ubuntu Servers</property>
<property name="lowerTitle">example tivoli dsm.sys file for ubuntu servers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617710</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-03-22 08:10:10.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-02-08 09:58:36.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138072</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 37584944
Fecha creación: 2010-03-22 09:31:53.000
<property name="body"><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
SErvername tivoli
COMMmethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename BIRCHINB
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /u01/.../*
include /u02/.../*
include /u03/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-02-03 10:46:58.000
versionComment: Migrated to Confluence 4.0
originalVersion: 17138077
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584944</id>
<property name="hibernateVersion">2</property>
<property name="title">Example Tivoli dsm.sys file for Red Hat Servers</property>
<property name="lowerTitle">example tivoli dsm.sys file for red hat servers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617712</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-03-22 09:31:53.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-02-03 10:46:58.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17138077</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 37584956
Fecha creación: 2008-03-05 16:56:14.000
<property name="body"><ac:macro ac:name="section"><ac:rich-text-body>
<ac:macro ac:name="column"><ac:parameter ac:name="width">50%</ac:parameter><ac:rich-text-body>
<ac:macro ac:name="info"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>Misc. Linux documentation. When we find something useful regarding Linux that we might use again, it should get documented here.</p></ac:rich-text-body></ac:macro>
<p><ac:macro ac:name="livesearch"><ac:parameter ac:name="id">1</ac:parameter><ac:parameter ac:name="spaceKey">linux</ac:parameter></ac:macro></p>
</ac:rich-text-body></ac:macro>
<ac:macro ac:name="column"><ac:parameter ac:name="width">50%</ac:parameter><ac:rich-text-body>
<ac:macro ac:name="recently-updated" />
</ac:rich-text-body></ac:macro>
</ac:rich-text-body></ac:macro></property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-06-25 10:34:45.000
versionComment: Migrated to Confluence 4.0
originalVersion: 2883631
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584956</id>
<property name="hibernateVersion">1</property>
<property name="title">Home</property>
<property name="lowerTitle">home</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617724</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-05 16:56:14.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-06-25 10:34:45.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883631</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37584958
Fecha creación: 2010-04-19 10:21:41.000
<property name="body"><p>1. Download the client zip file from sherpa or the Oracle site</p>
<p>2. Install the following additional packages:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#apt-get install libaio1 gawk
]] ></ac:plain-text-body></ac:macro>
<p>Additionally, be sure you are running the sun java software, not the default packaged version with Ubuntu. You will also make a link for awk to gawk.</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin sun-java6-jdk
#cd /etc/alternatives
#ln -s /usr/lib/jvm/java-6-sun/jre/bin/java java
#cd /usr/bin
#ln -s /usr/bin/gawk awk
]] ></ac:plain-text-body></ac:macro>
<p>3. Next, we will initiate the installer to see where it fails and what settings we need to add to our /etc/sysctl.conf file. Initiate the installer as follows, and then CANCEL as soon as you have the values you need:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
./runinstaller -ignoreSysPrereqs
]] ></ac:plain-text-body></ac:macro>
<p>You will reach a point where it checks for needed settings, and gives you a list of everything that does not meet requirements. The settings you are interested in are listed in the next step. Make a note of the values the installer recommends.</p>
<p>4. Add the following entries to your /etc/sysctl.conf file: (change values to match what is recommended for your machine - some will be the same, some won't)</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
# Oracle client stuff
kernel.shmmax = 536870912
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
]] ></ac:plain-text-body></ac:macro>
<p>Next, run the following to make the settings active:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#sysctl -p
]] ></ac:plain-text-body></ac:macro>
<p>5. Now you can run the installer and ignore the warnings completely (there is a checkbox to do this)</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
./runinstaller -ignoreSysPrereqs
]] ></ac:plain-text-body></ac:macro>
<p>6. Once it is finished, make a note of where you installed it to, and make the following entries in your .bashrc file:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#Oracle stuff
export ORACLE_HOME=/<path_to_where_you_installed>/product/11.2.0/client_1
export PATH=$PATH:$ORACLE_HOME/bin
export TNS_ADMIN=$ORACLE_HOME/network/admin
]] ></ac:plain-text-body></ac:macro>
<p>Next, run the following to make it active (NOT as root - run as your user):</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
$ . .bashrc
]] ></ac:plain-text-body></ac:macro>
<p>If that is difficult to read, it is:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
<dot><space><dot><bashrc>
]] ></ac:plain-text-body></ac:macro>
<p>7. Lastly, copy the contents of a known good tnsnames.ora file, and paste it into the following file:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
$ORACLE_HOME/network/admin/tnsnames.ora
]] ></ac:plain-text-body></ac:macro>
<p>8. Run tnsping against any of the tnsnames entries, and make sure you get a response.</p></property>
hibernateVersion: 1
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-19 10:35:20.000
versionComment: Migrated to Confluence 4.0
originalVersion: 17858594
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584958</id>
<property name="hibernateVersion">1</property>
<property name="title">Oracle full administrative client 11gR2 on Ubuntu Karmic Koala (9.10) 64-bit</property>
<property name="lowerTitle">oracle full administrative client 11gr2 on ubuntu karmic koala (9.10) 64-bit</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617726</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-19 10:21:41.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-19 10:35:20.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858594</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37584960
Fecha creación: 2010-04-20 09:06:58.000
<property name="body"><p>1. Add the following line to the bottom of your /etc/apt/sources.list file:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
deb http://download.virtualbox.org/virtualbox/debian] karmic non-free
]] ></ac:plain-text-body></ac:macro>
<p>2. Import the key:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -
]] ></ac:plain-text-body></ac:macro>
<p>Refresh the repositories:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get update
]] ></ac:plain-text-body></ac:macro>
<p>3. Install the latest virtualbox package (as of this writing it is virtualbox-3.1) by selecting it in Synaptic, or running this command from a terminal:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
$ sudo apt-get install virtualbox-3.1
]] ></ac:plain-text-body></ac:macro>
<p>4. Add yourself to the vboxusers group:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
$ sudo gpasswd -a YOURUSERNAME vboxusers
]] ></ac:plain-text-body></ac:macro>
<p>5. Find the devgid for the vboxusers group:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
$ grep vboxusers /etc/group
]] ></ac:plain-text-body></ac:macro>
<p>It will return something like:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
vboxusers:x:121:username
]] ></ac:plain-text-body></ac:macro>
<p>Add this line to the bottom of /etc/fstab, replacing the devgid number with your devgid:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
none /proc/bus/usb usbfs devgid=125,devmode=664 0 0
]] ></ac:plain-text-body></ac:macro>
<p>After you reboot you should now have USB support in VirtualBox.</p>
<p>Last tested on Ubuntu 9.10 Karmic Koala</p></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-20 09:08:40.000
versionComment: Migrated to Confluence 4.0
originalVersion: 17858608
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584960</id>
<property name="hibernateVersion">1</property>
<property name="title">Virtualbox and USB device support in Ubuntu Karmic Koala</property>
<property name="lowerTitle">virtualbox and usb device support in ubuntu karmic koala</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617728</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-20 09:06:58.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-20 09:08:40.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858608</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37584972
Fecha creación: 2008-03-06 15:37:40.000
<property name="body"><h2>First Step</h2><h5>If IP is assigned by DHCP, make sure /etc/hosts file looks like this:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername]] ></ac:plain-text-body></ac:macro><h5>If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
Ubuntu:
127.0.0.1 localhost
127.0.1.1 yourserver
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
]] ></ac:plain-text-body></ac:macro><h2>UBUNTU Step - populate /etc/hostname with short hostname</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[yourserver]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Second Step</h2><h5>If you need the change to happen immediately without a reboot, run the following command as root:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#hostname yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Third Step</h2><h5>This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fourth Step</h2><h5>Edit the /etc/sysconfig/network file HOSTNAME line to read:</h5><ac:macro ac:name="code"><ac:parameter ac:name="title">/etc/sysconfig/network</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[HOSTNAME=yourserver.suu.edu
]] ></ac:plain-text-body></ac:macro><h2>Fifth Step</h2><h5>As root, run the following command:</h5><ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
]] ></ac:plain-text-body></ac:macro><h2>Sixth Step</h2><h5>Red Hat - Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet]] ></ac:plain-text-body></ac:macro><h5>Ubuntu - Edit the /etc/network/interfaces (also /etc/network/networks with proper localnet)</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 134.250.x.x
netmask 255.255.255.0
network 134.250.x.0
broadcast 134.250.x.255
gateway 134.250.x.1
dns-nameservers 134.250.2.3 134.250.6.3
dns-search suu.edu]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Finally, reboot.</h2></property>
hibernateVersion: 1
version: 12
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-07-18 10:22:47.816
originalVersion: 2883645
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584972</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change host name and ip address</property>
<property name="lowerTitle">how to properly change host name and ip address</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617740</id>
</element>
</collection>
<property name="version">12</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-07-18 10:22:47.816</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37584975
Fecha creación: 2008-03-07 08:28:19.000
<property name="body"><h1>Remove unnecessary services</h1>
<ac:macro ac:name="code"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[
chkconfig --del anacron
chkconfig --del autofs
chkconfig --del apmd
chkconfig --del atd
chkconfig --del gpm
chkconfig --del irda
chkconfig --del isdn
chkconfig --del netfs
chkconfig --del nfs
chkconfig --del nfslock
chkconfig --del nscd
chkconfig --del ntpd
chkconfig --del portmap
chkconfig --del sendmail
chkconfig --del smartd
chkconfig --del snmpd
chkconfig --del snmptrapd
chkconfig --del winbind
chkconfig --del ypbind
chkconfig --del avahi-daemon
chkconfig --del cups
chkconfig --del exim
chkconfig --del firstboot
chkconfig --del gpm
chkconfig --del fuse
chkconfig --del mdmonitor --handles software raid
cd /etc/xinetd.d/
rm -rf /etc/xinetd.d/chargen*
rm -rf /etc/xinetd.d/daytime*
rm -rf /etc/xinetd.d/echo*
rm -rf /etc/xinetd.d/rsync*
rm -rf /etc/xinetd.d/time*
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-08-19 16:29:10.000
versionComment: Migrated to Confluence 4.0
originalVersion: 2883660
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584975</id>
<property name="hibernateVersion">1</property>
<property name="title">Securing Linux</property>
<property name="lowerTitle">securing linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617743</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 08:28:19.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-08-19 16:29:10.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883660</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 37584977
Fecha creación: 2010-05-18 10:41:08.000
<property name="body"><p>Similar to Windows Software Update Services, apt-mirror allows us to store a local copy of the Ubuntu updates repository so our machines don't all have to go out to the internet for updates. &nbsp;Not only does this reduce our bandwidth usage, but updates are delivered extremely quickly over local wire. &nbsp;Here is an example of an /etc/apt/sources.list file from an Ubuntu 10.04 LTS 32-bit server install, pointed at our local repository on sherpa.suu.edu:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
deb http://sherpa.suu.edu/ubuntu/ lucid main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://sherpa.suu.edu/ubuntu/ lucid-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://sherpa.suu.edu/ubuntu/ lucid universe
deb http://sherpa.suu.edu/ubuntu/ lucid-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://sherpa.suu.edu/ubuntu/ lucid multiverse
deb http://sherpa.suu.edu/ubuntu/ lucid-updates multiverse
## Uncomment the following line to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://sherpa.suu.edu/ubuntupartner lucid partner
## Security Updates
deb http://sherpa.suu.edu/updates lucid-security main restricted
deb http://sherpa.suu.edu/updates lucid-security universe
deb http://sherpa.suu.edu/updates lucid-security multiverse
]] ></ac:plain-text-body></ac:macro>
<p>NOTE: We do not currently mirror the deb-src (sources) files, since we rarely if ever compile our packages from source. Adding these sources to every subsection listed here would more than double the required space to store them. Your original sources.list file may or may not reference the source repositories. If it does, you should remove the lines from your file, or at least comment them out. If you need them, the only solution at this time is to leave them pointed at the original ubuntu location.</p>
<p>For reference, here is a standard unmodified sources.list from an 11.10 box:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
deb http://us.archive.ubuntu.com/ubuntu/ oneiric main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric main restricted
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates main restricted
deb http://us.archive.ubuntu.com/ubuntu/ oneiric universe
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric universe
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates universe
deb http://us.archive.ubuntu.com/ubuntu/ oneiric multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric multiverse
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse
# deb http://us.archive.ubuntu.com/ubuntu/ maverick-backports main restricted universe multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ maverick-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu oneiric partner
deb-src http://archive.canonical.com/ubuntu oneiric partner
deb http://extras.ubuntu.com/ubuntu oneiric main
deb-src http://extras.ubuntu.com/ubuntu oneiric main
deb http://security.ubuntu.com/ubuntu oneiric-security main restricted
deb-src http://security.ubuntu.com/ubuntu oneiric-security main restricted
deb http://security.ubuntu.com/ubuntu oneiric-security universe
deb-src http://security.ubuntu.com/ubuntu oneiric-security universe
deb http://security.ubuntu.com/ubuntu oneiric-security multiverse
deb-src http://security.ubuntu.com/ubuntu oneiric-security multiverse
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-11-07 10:37:36.000
versionComment: Migrated to Confluence 4.0
originalVersion: 17858700
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584977</id>
<property name="hibernateVersion">1</property>
<property name="title">Ubuntu local updates repository (example sources.list)</property>
<property name="lowerTitle">ubuntu local updates repository (example sources.list)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617745</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-05-18 10:41:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-11-07 10:37:36.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858700</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37584978
Fecha creación: 2008-03-07 16:22:44.000
<property name="body"><p>This document pertains to Redhat Enterprise Linux specifically, but may work for other distributions as well</p>
<h3>1- Install VNC Server</h3>
<p>#up2date vnc-server</p>
<h3>2- Set it to start at boot</h3>
<p>#chkconfig vncserver on</p>
<h3>3- Set up servers for individual users</h3>
<p>#vi /etc/sysconfig/vncservers<br />
(insert the following lines into the file)<br />
VNCSERVERS=&quot;1:usera 2:userb&quot; (add as many users as desired)<br />
VNCSERVERARGS<ac:link><ri:page ri:content-title="1" /></ac:link>=&quot;-geometry 1280x1024&quot; (set resolution you desire for user a)<br />
VNCSERVERARGS<ac:link><ri:page ri:content-title="2" /></ac:link>=&quot;-geometry 1024x768&quot; (set resolution you desire for user b)</p>
<h3>4- Initialize VNC params for each user</h3>
<p>#vncpasswd usera (enter password)<br />
#vncpasswd userb (enter password)</p>
<h3>5- Restart services</h3>
<p>#/etc/init.d/vncserver restart</p>
<h3>6- Edit each user's X startup script for VNC</h3>
<p>#vi /home/usera/.vnc/xstartup<br />
(the file should look like the following for full gui capability; for slow connections, there are much 'slimmer' options; this doc assumes local LAN connectivity)</p>
<h4># The file should look like this for a normal desktop:</h4>
<ac:macro ac:name="code"><ac:parameter ac:name="title">/home/username/.vnc/xstartup</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
The file should look like this if you have a slow connection:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &
]] ></ac:plain-text-body></ac:macro>
<h3>7- Restart services again</h3>
<p>#/etc/init.d/vncserver restart</p>
<h3>8- Connect with client from remote desktop</h3>
<p>using the free RealVNC client, simply enter the following into the hostname prompt:<br />
your.server.edu:1 (the :1 denotes user 'a' in this case; substitute other numbers accordingly)</p></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2d0007
lastModificationDate: 2008-03-12 09:50:45.000
versionComment: Migrated to Confluence 4.0
originalVersion: 2883664
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584978</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring VNC</property>
<property name="lowerTitle">configuring vnc</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617746</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:22:44.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2d0007</id>
</property>
<property name="lastModificationDate">2008-03-12 09:50:45.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883664</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37584981
Fecha creación: 2008-03-07 16:37:30.000
<property name="body"><h3>Provided by Jeff Johnson:</h3>
<p>No single tool, but here's what I do:</p>
<p>0) Make a copy of everything, just in case:<br />
cd /var/lib<br />
tar czvf /tmp/rpmdb.tar.gz rpm</p>
<p>1) Check /var/lib/rpm/Packages with db_verify.<br />
The command is<br />
db_verify /var/lib/rpm/Packages<br />
If that fails, the fix is<br />
cd /var/lib/rpm<br />
mv Packages Packages-ORIG<br />
db_dump Packages-ORIG | db_load Packages<br />
At this point Packages should be OK.</p>
<p>2) Read all Package headers.<br />
The command is<br />
rpm -qa<br />
If that &quot;works&quot;, go to step 5), do &quot;rpm --rebuilddb&quot; and you're<br />
done.<br />
If that segfaults, go to 3).<br />
if that hangs, then do<br />
rm -f /var/lib/rpm/__db*<br />
and try again.</p>
<p>3) You have a segfault on a header.<br />
The first step is to get the segfaulting header instance.<br />
Append &quot;debug&quot; to the Packages configuration by<br />
echo &quot;%_dbi_config_Packages %{_dbi_htconfig} lockdbfd debug&quot; \<br />
&gt;&gt; /etc/rpm/macros</p>
<p> Try &quot;rpm -qa&quot;, lots of boring glop until segfault.</p>
<p> On the screen will be something like</p>
<p> ...<br />
Get Packages key (0x8216580,4) data (0x4014f008,155244) &quot;#612&quot; 47000000<br />
rc<br />
0kernel-enterprise-2.4.9-26beta.17<br />
Get Packages key ((nil),0) data ((nil),0) &quot;&quot; deadbeef rc -30990<br />
&lt;segfault here&gt;</p>
<p> The 2nd to last &quot;Get Packages&quot; line is what you want, the<br />
bad header instance above is &quot;612&quot; in decimal. Note the<br />
package name-version-release, you'll want to reinstall<br />
that package somewhen.</p>
<p>4) Nuke the bad header.<br />
I usually whip out my handy-dandy header instance deleter,<br />
edit the bad record into the source, compile, run, and go back<br />
to step 2).</p>
<p> The program is at<br />
<a class="external-link" href="ftp://people.redhat.com/jbj/t38454.c" rel="nofollow">ftp://people.redhat.com/jbj/t38454.c</a><br />
FWIW, the program is named after the bugzilla report that<br />
caused me to write it.</p>
<p> Retrieve, and edit the bad header instances into<br />
...</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ int badrecs[] = {
--> EDIT --> 562, 566, 559, 561, 563, 560, 564,
-1
};
...
Compile with
cc -o t38454 t38454.c -ldb-3.2
Run as
t38454 ]] ></ac:plain-text-body></ac:macro>
<p> Go back to step 2).</p>
<p>5) Clean up.<br />
a) rpm --rebuilddb<br />
b) rm -f /etc/rpm/macros<br />
c) rm -rf /var/lib/rpmrebuild*<br />
d) Reinstall the deleted package.</p></property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-07 16:37:31.000
versionComment: Migrated to Confluence 4.0
originalVersion: 2883680
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584981</id>
<property name="hibernateVersion">1</property>
<property name="title">Fix Corrupt RPM Database</property>
<property name="lowerTitle">fix corrupt rpm database</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617749</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:37:30.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-07 16:37:31.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883680</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37584996
Fecha creación: 2011-11-16 08:49:08.000
<property name="body"><h2>Check the location of all resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_mon -1
]] ></ac:plain-text-body></ac:macro><h2>Migrate a resource to another node</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:macro><h2>Move a resource back to its normal location</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:macro><h2>List resources</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource --list]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Stop a running resource and everything that depends on it (in order to delete it)</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ crm_resource --resource <resource_name_from_list> --set-parameter target-role --meta --parameter-value Stopped]] ></ac:plain-text-body></ac:macro><h2>Check status of sticky table (must have haproxy.stat entry in haproxy.config)</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[(Returned IP address removed for security)
#socat readline /var/run/haproxy.stat
prompt
>set timeout cli 1d
>show table
# table: banner-prod-inb, type: ip, size:512000, used:152
>show table banner-prod-inb
# table: banner-prod-inb, type: ip, size:512000, used:1
0x130df64: key=134.250.x.x use=0 exp=23192485 server_id=1
## TO CLEAR STICKY ENTRIES
>clear table banner-inb-prod]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Delete a resource</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[crm_resource -D -r my_first_ip -t primitive]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 10
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-09-17 23:09:11.471
originalVersion: 24346873
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584996</id>
<property name="hibernateVersion">2</property>
<property name="title">Routine Cluster Tasks (haproxy)</property>
<property name="lowerTitle">routine cluster tasks (haproxy)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617764</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-09-17 23:09:11.471</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37584998
Fecha creación: 2008-11-11 08:11:18.000
<property name="body"><ac:macro ac:name="attachments"><ac:parameter ac:name="old">true</ac:parameter></ac:macro></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-11-12 08:10:58.000
versionComment: Migrated to Confluence 4.0
originalVersion: 8749165
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37584998</id>
<property name="hibernateVersion">1</property>
<property name="title">vi Cheat Sheet</property>
<property name="lowerTitle">vi cheat sheet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617766</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-11-11 08:11:18.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-11-12 08:10:58.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749165</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585005
Fecha creación: 2011-12-05 15:14:15.000
<property name="body"><h3>/etc/httpd/conf.d/ssl.conf</h3>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
# SSL Cipher Suite:
# List the ciphers that the client is permitted to negotiate.
# See the mod_ssl documentation for a complete list.
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
# Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate. If
# the certificate is encrypted, then you will be prompted for a
# pass phrase. Note that a kill -HUP will prompt again. A new
# certificate can be generated using the genkey(1) command.
SSLCertificateFile /etc/pki/tls/certs/suucert.pem
# Server Private Key:
# If the key is not combined with the certificate, use this
# directive to point at the key file. Keep in mind that if
# you've both a RSA and a DSA private key you can configure
# both in parallel (to also allow the use of DSA ciphers, etc.)
SSLCertificateKeyFile /etc/pki/tls/private/suuprivate.key
# Server Certificate Chain:
# Point SSLCertificateChainFile at a file containing the
# concatenation of PEM encoded CA certificates which form the
# certificate chain for the server certificate. Alternatively
# the referenced file can be the same as SSLCertificateFile
# when the CA certificates are directly appended to the server
# certificate for convinience.
#SSLCertificateChainFile /etc/pki/tls/certs/
# Certificate Authority (CA):
# Set the CA certificate verification path where to find CA
# certificates for client authentication or alternatively one
# huge file containing all of them (file must be PEM encoded)
SSLCACertificateFile /etc/pki/tls/certs/RapidRoot.pem
]] ></ac:plain-text-body></ac:macro>
<h3>/etc/httpd/conf/httpd.conf</h3>
<p>Be sure the following Trace directive exists in your global config section</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#
TraceEnable off
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 2
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-12-05 15:40:53.000
versionComment: Migrated to Confluence 4.0
originalVersion: 24346975
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585005</id>
<property name="hibernateVersion">2</property>
<property name="title">Apache2 configuration example</property>
<property name="lowerTitle">apache2 configuration example</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617773</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-12-05 15:14:15.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-12-05 15:40:53.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346975</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585026
Fecha creación: 2012-02-10 10:37:11.000
<property name="body"><h3>Oracle production database servers (Red Hat or CentOS)</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude dsmsched.log
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude /.../tmp/*/.../*
exclude /tmp/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /var/cache
exclude.dir /usr/src
]] ></ac:plain-text-body></ac:macro><h3>Ubuntu Server</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 13
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-06-04 13:23:02.527
originalVersion: 24805572
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585026</id>
<property name="hibernateVersion">2</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617794</id>
</element>
</collection>
<property name="version">13</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-06-04 13:23:02.527</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585030
Fecha creación: 2012-03-05 15:17:39.000
<property name="body"><h3>How do I tell what is running on a given port?</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[lsof -i :<port number>
i.e. lsof -i :5353
]] ></ac:plain-text-body></ac:macro><h3>How do I remove unused kernels on Ubuntu Server?</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get autoremove
#apt-get autoclean
#cd /boot
#uname -r (make note of response; this is the running kernel)
2.6.32-40-server
Use regex to remove everything *except* the running kernel. In my case, the following command did it:
#apt-get remove linux-image-2.6.32-3[0-9]-server
This removed all kernels from version 30-39, leaving just the running one (40) intact. This freed up 767MB of space.
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-04-18 13:44:31.693
originalVersion: 25395236
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585030</id>
<property name="hibernateVersion">1</property>
<property name="title">Linux commands cheat sheet</property>
<property name="lowerTitle">linux commands cheat sheet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617798</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-03-05 15:17:39.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-04-18 13:44:31.693</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">25395236</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 37585035
Fecha creación: 2008-12-02 09:24:48.000
<property name="body"><h3>Create a file called suu_startup in the /etc/init.d directory. Be sure to replace &lt;server&gt; with your server's name, i.e. oak, aspen, etc. Save file and proceed to next steps.</h3>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
#
# chkconfig: 35 98 01
# description: Starts Oracle Application Server software
#
export SOURCE=/u01/app/oracle/scripts
export USER=root
touch /var/lock/subsys/suu_startup
case "$1" in
start)
echo -n "Starting suu_startup"
if [ -f "$SOURCE/start<server>.ksh" ]; then
$SOURCE/start<server>.ksh #> /tmp/start<server>.log 2>&1
fi
;;
stop)
echo -n "Stopping suu_startup"
if [ -f "$SOURCE/stop<server>.ksh" ]; then
$SOURCE/stop<server>.ksh #> /tmp/stop<server>.log 2>&1
fi
;;
*)
printf "Usage: `basename $0` {start | stop}\n"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro>
<h4>Step 2 - chmod 755 suu_startup</h4>
<h4>Step 3 - chkconfig --add suu_startup</h4>
<h4>Step 4 - chkconfig --level 345 suu_startup on</h4></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-12-02 09:43:27.000
versionComment: Migrated to Confluence 4.0
originalVersion: 8749480
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585035</id>
<property name="hibernateVersion">1</property>
<property name="title">Oracle Database Startup and Shutdown Script (Template)</property>
<property name="lowerTitle">oracle database startup and shutdown script (template)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617803</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-12-02 09:24:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-12-02 09:43:27.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749480</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585128
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found at ftp://archive.suu.edu/clients</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tsm
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tsm
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tsm.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro><h4>Next, execute the following commands:</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:macro><h4>Next, register a new node on the tsm server (only for traditional backups, NOT full VMs)</h4><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[register node <nodename> <password> passe=0 do=standard url=http://<host.suu.edu>:1581 clo={windows|linux}]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h4>Then, configure the schedule via the GUI at&nbsp;<a href="https://tsm.suu.edu:16311/ibm/console">https://tsm.suu.edu:16311/ibm/console</a></h4><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p><h3>Resetting encryption password:</h3><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[If you ever accidentally enter the wrong encryption key on initial setup, you can have it re-prompt you by doing the following:
# service suu_tivoli stop
# rm /etc/adsm/TSM.PWD
# service suu_tivoli start
# dsmc s /etc/inittab (or any other small file)
You will be prompted for nodename, and then node password. Once you've logged in, it will prompt you about the Encryption Key, at which point you select 1, and enter the key twice. If the backup completes successfully, you can move on to creating a full backup.]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 1
version: 59
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2015-07-29 09:43:53.025
originalVersion: 3637384
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585128</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617896</id>
</element>
</collection>
<property name="version">59</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2015-07-29 09:43:53.025</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585129
Fecha creación: 2008-04-10 11:13:24.000
<property name="body"><p>CUPS Doc<br />
To install cups and hplip on a new server, here is the procedure:</p>
<p>CUPS:<br />
1- ensure you have the following packages installed:<br />
gcc, libjpeg, libjpeg-devel, libpng, libpng-devel, libtiff, libtiff-devel, zlib, zlib-devel,dbus-devel,php-devel,pyqt,pyqt-devel,xsane,net-snmp-devel</p>
<p>2- Download the latest stable source from www.cups.org (1.3.6 as of this writing)</p>
<p>3- Compile the source as follows:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
rpmbuild -ta cups-version-source.tar.gz --without dbus
]] ></ac:plain-text-body></ac:macro>
<p>This will produce several compiled rpms in the /usr/src/redhat/RPMS/i386 directory.<br />
The only ones you want are cups, cups-libs, cups-debuginfo, cups-devel,cups-lpd,cups-php<br />
Do an rpm -Uvh on all these packages.</p>
<p>HPLIP:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#tar -zxvf hplip-****.gz
#cd hplip-****
#(as banjobs, not ROOT) ./configure --enable-network-build --disable-dbus-build --disable-pp-build --disable-fax-build --disable-gui-build --disable-scan-build --enable-doc-build --enable-foomatic-ppd-install --disable-foomatic-drv-install --with-hpppddir=/usr/share/cups/model/HP --disable-hpijs-only-build --prefix=/usr
#(as banjobs, not ROOT) make
#(as ROOT) make install
#/etc/init.d/hplip restart
]] ></ac:plain-text-body></ac:macro>
<p>The following command creates a print queue called tranb on Solaris<br />
lpadmin -p tranb -v/dev/null -m netstandard -o dest=134.250.51.248:3002 -T PS -I postscript -o protocol=tcp</p>
<p>--landscape using LPR</p>
<p>lpr -o landscape -o cpi=15 -o lpi=12 -o cpi=16 -Pormond SHRTRTC_876.lis</p>
<p>Cups Options:</p>
<p>Jobs can also have options associated with them such as media size, number of copies, and priority.<br />
CUPS supports collections of printers known as classes. Jobs sent to a class are forwarded to the first available printer in the class.<br />
Filters allow a user or application to print many types of files without extra effort. Print jobs sent to a CUPS server are filtered before sending them to a printer.<br />
Some filters convert job files to different formats that the printer can understand. Others perform page selection and ordering tasks.</p>
<p>CUPS provides filters for printing many types of image files, HP-GL/2 files, PDF files, and text files.<br />
CUPS also supplies PostScript and image file Raster Image Processor (&quot;RIP&quot;) filters that convert PostScript or image files into bitmaps that can be sent to a raster printer.</p>
<p>CUPS also provides implicit classes, which are collections of printers and/or classes with the same name. This allows you to setup multiple servers pointing to the same physical network printer,<br />
for example, so that you aren't relying on a single system for printing. Because this also works with printer classes, you can setup multiple servers and printers<br />
and never worry about a single point of failure unless all of the printers and servers go down!</p>
<p>General Options</p>
<p>The following options apply when printing all types of files.<br />
Selecting the Media Size, Type, and Source</p>
<p>The -o media=xyz option sets the media size, type, and/or source:</p>
<p>lp -o media=Letter filename ENTER<br />
lp -o media=Letter,MultiPurpose filename ENTER<br />
lpr -o media=Letter,Transparency filename ENTER<br />
lpr -o media=Letter,MultiPurpose,Transparency filename ENTER</p>
<p>The available media sizes, types, and sources depend on the printer, but most support the following options (case is not significant):</p>
<ul>
<li>Letter - US Letter (8.5x11 inches, or 216x279mm)</li>
<li>Legal - US Legal (8.5x14 inches, or 216x356mm)</li>
<li>A4 - ISO A4 (8.27x11.69 inches, or 210x297mm)</li>
<li>COM10 - US #10 Envelope (9.5x4.125 inches, or 241x105mm)</li>
<li>DL - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)</li>
<li>Transparency - Transparency media type or source</li>
<li>Upper - Upper paper tray</li>
<li>Lower - Lower paper tray</li>
<li>MultiPurpose - Multi-purpose paper tray</li>
<li>LargeCapacity - Large capacity paper tray</li>
</ul>
<p>The actual options supported are defined in the printer's PPD file in the PageSize, InputSlot, and MediaType options.<br />
Setting the Orientation</p>
<p>The -o landscape option will rotate the page 90 degrees to print in landscape orientation:</p>
<p>lp -o landscape filename ENTER<br />
lpr -o landscape filename ENTER</p>
<p>Printing On Both Sides of the Paper</p>
<p>The -o sides=two-sided-short-edge and -o sides=two-sided-long-edge options will enable duplexing on the printer, if the printer supports it. The -o sides=two-sided-short-edge option is suitable for landscape pages, while the -o sides=two-sided-long-edge option is suitable for portrait pages:</p>
<p>lp -o sides=two-sided-short-edge filename ENTER<br />
lp -o sides=two-sided-long-edge filename ENTER<br />
lpr -o sides=two-sided-long-edge filename ENTER</p>
<p>The default is to print single-sided:</p>
<p>lp -o sides=one-sided filename ENTER<br />
lpr -o sides=one-sided filename ENTER</p>
<p>Banner Options</p>
<p>The following options apply when printing all types of files.<br />
Selecting the Banner Page(s)</p>
<p>The -o jobsheets=start,end option sets the banner page(s) to use for a job:</p>
<p>lp -o job-sheets=none filename ENTER<br />
lp -o job-sheets=standard filename ENTER<br />
lpr -o job-sheets=classified,classified filename ENTER</p>
<p>If only one banner file is specified, it will be printed before the files in the job. If a second banner file is specified, it is printed after the files in the job.</p>
<p>The available banner pages depend on the local system configuration; CUPS includes the following banner files:</p>
<ul>
<li>none - Do not produce a banner page.</li>
<li>classified - A banner page with a &quot;classified&quot; label at the top and bottom.</li>
<li>confidential - A banner page with a &quot;confidential&quot; label at the top and bottom.</li>
<li>secret - A banner page with a &quot;secret&quot; label at the top and bottom.</li>
<li>standard - A banner page with no label at the top and bottom.</li>
<li>topsecret - A banner page with a &quot;top secret&quot; label at the top and bottom.</li>
<li>unclassified - A banner page with an &quot;unclassified&quot; label at the top and bottom.</li>
</ul>
<p>Document Options</p>
<p>The following options apply when printing all types of files.<br />
Selecting a Range of Pages</p>
<p>The -o page-ranges=pages option selects a range of pages for printing:</p>
<p>lp -o page-ranges=1 filename ENTER<br />
lp -o page-ranges=1-4 filename ENTER<br />
lp -o page-ranges=1-4,7,9-12 filename ENTER<br />
lpr -o page-ranges=1-4,7,9-12 filename ENTER</p>
<p>As shown above, the pages value can be a single page, a range of pages, or a collection of page numbers and ranges separated by commas. The pages will always be printed in ascending order, regardless of the order of the pages in the page-ranges option.</p>
<p>The default is to print all pages.<br />
Selecting Even or Odd Pages</p>
<p>Use the -o page-set=set option to select the even or odd pages:</p>
<p>lp -o page-set=odd filename ENTER<br />
lp -o page-set=even filename ENTER<br />
lpr -o page-set=even filename ENTER</p>
<p>The default is to print all pages.<br />
Setting the Output Order</p>
<p>The the -o outputorder=order option to set the output order of all pages:</p>
<p>lp -o outputorder=normal filename ENTER<br />
lp -o outputorder=reverse filename ENTER<br />
lpr -o outputorder=reverse filename ENTER</p>
<p>N-Up Printing</p>
<p>The -o number-up=value option selects N-Up printing. N-Up printing places multiple document pages on a single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is 1-Up:</p>
<p>lp -o number-up=1 filename ENTER<br />
lp -o number-up=2 filename ENTER<br />
lp -o number-up=4 filename ENTER<br />
lpr -o number-up=16 filename ENTER</p>
<p>The -o page-border=value option chooses the border to draw around each page:</p>
<ul>
<li>-o page-border=double; draw two hairline borders around each page</li>
<li>-o page-border=double-thick; draw two 1pt borders around each page</li>
<li>-o page-border=none; do not draw a border (default)</li>
<li>-o page-border=single; draw one hairline border around each page</li>
<li>-o page-border=single-thick; draw one 1pt border around each page</li>
</ul>
<p>The -o number-up-layout=value option chooses the layout of the pages on each output page:</p>
<ul>
<li>-o number-up-layout=btlr; Bottom to top, left to right</li>
<li>-o number-up-layout=btrl; Bottom to top, right to left</li>
<li>-o number-up-layout=lrbt; Left to right, bottom to top</li>
<li>-o number-up-layout=lrtb; Left to right, top to bottom (default)</li>
<li>-o number-up-layout=rlbt; Right to left, bottom to top</li>
<li>-o number-up-layout=rltb; Right to left, top to bottom</li>
<li>-o number-up-layout=tblr; Top to bottom, left to right</li>
<li>-o number-up-layout=tbrl; Top to bottom, right to left</li>
</ul>
<p>Mirroring Prints</p>
<p>You can mirror a print using the -o mirror option:</p>
<p>lp -o mirror filename ENTER<br />
lpr -o mirror filename ENTER</p>
<p>This is useful for printing mirrored pages on transfer paper, for T shirts, mugs, etc.<br />
Setting the Brightness</p>
<p>You can control the overall brightness of the printed output using the -o brightness=percent option:</p>
<p>lp -o brightness=120 filename ENTER<br />
lpr -o brightness=120 filename ENTER</p>
<p>Values greater than 100 will lighten the print, while values less than 100 will darken it.<br />
Setting the Gamma Correction</p>
<p>You can control the overall gamma correction of the printed output using the -o gamma=value option:</p>
<p>lp -o gamma=1700 filename ENTER<br />
lpr -o gamma=1700 filename ENTER</p>
<p>Values greater than 1000 will lighten the print, while values less than 1000 will darken it. The default gamma is 1000.<br />
Text Options</p>
<p>The following options apply when printing text files.<br />
Setting the Number of Characters Per Inch</p>
<p>The -o cpi=value option sets the number of characters per inch:</p>
<p>lp -o cpi=10 filename ENTER<br />
lp -o cpi=12 filename ENTER<br />
lpr -o cpi=17 filename ENTER</p>
<p>The default characters per inch is 10.<br />
Setting the Number of Lines Per Inch</p>
<p>The -o lpi=value option sets the number of lines per inch:</p>
<p>lp -o lpi=6 filename ENTER<br />
lpr -o lpi=8 filename ENTER</p>
<p>The default lines per inch is 6.<br />
Setting the Number of Columns</p>
<p>The -o columns=value option sets the number of text columns:</p>
<p>lp -o columns=2 filename ENTER<br />
lpr -o columns=3 filename ENTER</p>
<p>The default number of columns is 1.<br />
Setting the Page Margins</p>
<p>Normally the page margins are set to the hard limits of the printer. Use the -o page-left=value, -o page-right=value , -o page-top=value, and -o page-bottom=value options to adjust the page margins:</p>
<p>lp -o page-left=value filename ENTER<br />
lp -o page-right=value filename ENTER<br />
lp -o page-top=value filename ENTER<br />
lp -o page-bottom=value filename ENTER<br />
lpr -o page-bottom=value filename ENTER</p>
<p>The value argument is the margin in points; each point is 1/72 inch or 0.35mm.<br />
Pretty Printing</p>
<p>The -o prettyprint option puts a header at the top of each page with the page number, job title (usually the filename), and the date. Also, C and C++ keywords are highlighted, and comment lines are italicized:</p>
<p>lp -o prettyprint filename ENTER<br />
lpr -o prettyprint filename ENTER</p>
<p>Image Options</p>
<p>The following options apply when printing image files.<br />
Positioning the Image</p>
<p>The -o position=name option specifies the position of the image on the page:</p>
<ul>
<li>center - Center the image on the page (default)</li>
<li>top - Print the image centered at the top of the page</li>
<li>left - Print the image centered on the left of page</li>
<li>right - Print the image centered on the right of the page</li>
<li>top-left - Print the image at the top left corner of the page</li>
<li>top-right - Print the image at the top right corner of the page</li>
<li>bottom - Print the image centered at the bottom of the page</li>
<li>bottom-left - Print the image at the bottom left corner of the page</li>
<li>bottom-right - Print the image at the bottom right corner of the page</li>
</ul>
<p>Scaling the Image</p>
<p>The -o scaling=percent, -o ppi=value, and -o natural-scaling=percent options change the size of a printed image:</p>
<p>lp -o scaling=percent filename ENTER<br />
lp -o ppi=value filename ENTER<br />
lpr -o natural-scaling=percent filename ENTER</p>
<p>The scaling=percent value is a number from 1 to 800 specifying the size in relation to the page (not the image.) A scaling of 100 percent will fill the page as completely as the image aspect ratio allows. A scaling of 200 percent will print on up to 4 pages.</p>
<p>The ppi=value value is a number from 1 to 1200 specifying the resolution of the image in pixels per inch. An image that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch, for example. If the specified resolution makes the image larger than the page, multiple pages will be printed to satisfy the request.</p>
<p>The natural-scaling=percent value is a number from 1 to 800 specifying the size in relation to the natural image size. A scaling of 100 percent will print the image at its natural size, while a scaling of 50 percent will print the image at half its natural size. If the specified scaling makes the image larger than the page, multiple pages will be printed to satisfy the request.<br />
Adjusting the Hue (Tint) of an Image</p>
<p>The -o hue=value option will adjust the hue of the printed image, much like the tint control on your television:</p>
<p>lp -o hue=value filename ENTER<br />
lpr -o hue=value filename ENTER</p>
<p>The value argument is a number from -360 to 360 and represents the color hue rotation. The following table summarizes the change you'll see with different colors:<br />
Original hue=-45 hue=45<br />
Red Purple Yellow-orange<br />
Green Yellow-green Blue-green<br />
Yellow Orange Green-yellow<br />
Blue Sky-blue Purple<br />
Magenta Indigo Crimson<br />
Cyan Blue-green Light-navy-blue</p>
<p>The default hue adjustment is 0.<br />
Adjusting the Saturation (Color) of an Image</p>
<p>The -o saturation=percent option adjusts the saturation of the colors in an image, much like the color knob on your television:</p>
<p>lp -o saturation=percent filename ENTER<br />
lpr -o saturation=percent filename ENTER</p>
<p>The percent argument specifies the color saturation from 0 to 200. A color saturation of 0 produces a black-and-white print, while a value of 200 will make the colors extremely intense.</p>
<p>The default saturation is 100.<br />
HP-GL/2 Options</p>
<p>The following options apply to HP-GL/2 files.<br />
Printing in Black</p>
<p>The -o blackplot option specifies that all pens should plot in black:</p>
<p>lp -o blackplot filename ENTER<br />
lpr -o blackplot filename ENTER</p>
<p>The default is to use the colors defined in the plot file or the standard pen colors defined in the HP-GL/2 reference manual from Hewlett Packard.<br />
Fitting the Plot on the Page</p>
<p>The -o fitplot option specifies that the plot should be scaled to fit on the page:</p>
<p>lp -o fitplot filename ENTER<br />
lpr -o fitplot filename ENTER</p>
<p>The default is to use the absolute distances specified in the plot file.<br />
NOTE:</p>
<p>This feature depends upon an accurate plot size (PS) command in the HP-GL/2 file. If no plot size is given in the file than the HP-GL/2 filter assumes the plot is ANSI E size.</p>
<p>Setting the Default Pen Width</p>
<p>The -o penwidth=value option specifies the default pen width for HP-GL/2 files:</p>
<p>lp -o penwidth=value filename ENTER<br />
lpr -o penwidth=value filename ENTER</p>
<p>The pen width value specifies the pen width in micrometers. The default value of 1000 produces lines that are 1 millimeter in width. Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.<br />
NOTE:</p>
<p>This option is ignored when the pen widths are set in the plot file.</p>
<p>Raw or Unfiltered Output</p>
<p>The -o raw option allows you to send files directly to a printer without filtering. This is sometimes required when printing from applications that provide their own &quot;printer drivers&quot; for your printer:</p>
<p>lp -o raw filename ENTER<br />
lpr -o raw filename ENTER</p>
<p>The -l option can also be used with the lpr command to send files directly to a printer:</p>
<p>lpr -l filename ENTER</p>
<p>4 - Saving Printer Options and Defaults</p>
<p>This chapter describes how to save printer options for your printer and set your own default printer.<br />
Printer Options</p>
<p>Each printer supports a large number of options, which you learned about in Chapter 3, &quot;Standard Printer Options&quot;. Rather than specifying these options each time you print a file, CUPS allows you to save them as &quot;default&quot; options for the printer.</p>
<p>The lpoptions(1) command saves the options for your printers. Like the lp and lpr commands, it accepts printer options using the -o argument:</p>
<p>lpoptions -o prettyprint ENTER<br />
lpoptions -o media=A4 -o sides=two-sided-long-edge ENTER<br />
lpoptions -o media=Legal -o scaling=100 ENTER</p>
<p>Once saved, any lp or lpr command will use them when you print.<br />
Note:</p>
<p>Running the lpoptions command as the root user (or any user with a UID of 0) will set the default options for all users. The root account does not have its own set of default options.</p>
<p>Setting Options for a Specific Printer</p>
<p>The previous example shows how to set the options for the default printer. The -p printer option specifies the options are for another printer:</p>
<p>lpoptions -p laserjet -o prettyprint ENTER<br />
lpoptions -p laserjet -o media=A4 -o sides=two-sided-long-edge ENTER<br />
lpoptions -p deskjet -o media=Legal -o scaling=100 ENTER</p>
<p>Removing Options</p>
<p>The previous two examples shows how to set options for the default and a specific printer. Below, shows you how to remove the saved option using the -r argument:</p>
<p>lpoptions -r prettyprint ENTER<br />
lpoptions -p laserjet -r prettyprint ENTER</p>
<p>Viewing the Current Defaults</p>
<p>The lpoptions command can also be used to show the current options by not specifying any new options on the command-line:</p>
<p>lpoptions ENTER<br />
media=A4 sides=two-sided-long-edge<br />
lpoptions -p deskjet ENTER<br />
media=Legal scaling=100</p>
<p>Viewing Options for a Specific Printer</p>
<p>You can display the supported options using the lpoptions command with the -l option, as follows:</p>
<p>lpoptions -p laserjet -l ENTER</p>
<p>Setting the Default Printer</p>
<p>The administrator normally will set a system-wide default printer that is normally used as the default printer by everyone. Use the -d printer option to set your own default printer:</p>
<p>lpoptions -d deskjet ENTER</p>
<p>The printer can be local (deskjet) or remote ( deskjet@server).<br />
Printer Instances</p>
<p>Besides setting options for each print queue, CUPS supports printer instances which allow you to define several different sets of options for each printer. You specify a printer instance using the slash <ac:emoticon ac:name="tick" /> character:</p>
<p>lpoptions -p laserjet/duplex -o sides=two-sided-long-edge ENTER<br />
lpoptions -p laserjet/legal -o media=Legal ENTER</p>
<p>The lp and lpr commands also understand this notation:</p>
<p>lp -d laserjet/duplex filename ENTER<br />
lpr -P laserjet/legal filename ENTER</p>
<p>Removing Instances</p>
<p>Use the -x printer/instance option to remove a printer instance that you no longer need:</p>
<p>lpoptions -x laserjet ENTER<br />
lpoptions -x laserjet/duplex ENTER<br />
lpoptions -x laserjet/legal ENTER</p>
<p>The -x option only removes the default options for that printer and instance; the original print queue will remain until deleted with the lpadmin(8) command by the administrator.</p>
<ol>
<li>Allow printing to printer MyLaserJet from</li>
<li>itself and computers 192.10.2.5 and 192.10.2.6<br />
&lt;Location /printers/MyLaserJet&gt;<br />
...<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.1<br />
Allow from 192.10.2.5<br />
Allow from 192.10.2.6<br />
&lt;/Location&gt;</li>
</ol>
<ol>
<li>Allow printing to printer MyLaserJet from</li>
<li>itself and all computers on subnet 192.10.2.x<br />
&lt;Location /printers/MyLaserJet&gt;<br />
...<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.1<br />
Allow from 192.10.2.0/255.255.255.0<br />
&lt;/Location&gt;</li>
</ol>
</property>
hibernateVersion: 1
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-07-21 16:20:13.000
versionComment: Migrated to Confluence 4.0
originalVersion: 3637388
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585129</id>
<property name="hibernateVersion">1</property>
<property name="title">CUPS Reference</property>
<property name="lowerTitle">cups reference</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617897</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 11:13:24.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-07-21 16:20:13.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637388</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585135
Fecha creación: 2008-04-10 17:02:47.000
<property name="body"><h3>Bash Template for Oracle/Crystal server on Linux:</h3>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
CRYSTALDIR=/usr/local/CE10/crystal; export CRYSTALDIR
# User specific environment and startup programs
TOM=/usr/jakarta-tomcat-5.0.28; export TOM
JAVA_HOME=/usr/java/j2sdk1.4.2_05; export JAVA_HOME
CATALINA_HOME=/usr/jakarta-tomcat-5.0.28; export CATALINA_HOME
TWO_TASK=DEV; export TWO_TASK
LD_ASSUME_KERNEL=2.4.1; export LD_ASSUME_KERNEL
ORACLE_BASE=/opt/oracle; export ORACLE_BASE
ORACLE_HOME=/opt/oracle/product/9.2.0; export ORACLE_HOME
ORACLE_SID=DEV; export ORACLE_SID
ORACLE_OWNER=oracle; export ORACLE_OWNER
SH_LIB_PATH=$ORACLE_HOME/lib; export SH_LIB_PATH
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN
ORACLE_TERM=xterm; export ORACLE_TERM
CLASSPATH=/opt/oracle/product/9.2.0/jdbc/lib/classes111.zip:/usr/local/CE10/crystal/enterprise/java/applications/cewcanative.jar; export CLASSPATH
NLS_LANG=AMERICAN; export NLS_LANG
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib; export LD_LIBRARY_PATH
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin:/usr/java/j2sdk1.4.2_05/bin
#BASEDIR=$TOM; export BASEDIR
export PATH
unset USERNAME
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-10 17:02:48.000
versionComment: Migrated to Confluence 4.0
originalVersion: 3637395
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585135</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuration Notes for Business Objects or Crystal Reports on Linux</property>
<property name="lowerTitle">configuration notes for business objects or crystal reports on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617903</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 17:02:47.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-10 17:02:48.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637395</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585137
Fecha creación: 2008-04-14 08:59:59.000
<property name="body"><h2>This document assumes you have the ncpmount, ncp, ncplogin, ncpmap, and ncpumount utilities installed on your machine</h2>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
ncpmount -S cl01-adusers-server -A 134.250.12.107 -U username.it.administration.suu -V adusers/IT/Yourdir /dir/where/youwantitmountedonlocalfilesystem
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-14 09:00:00.000
versionComment: Migrated to Confluence 4.0
originalVersion: 4063234
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585137</id>
<property name="hibernateVersion">1</property>
<property name="title">Mapping Netware Drives under Linux</property>
<property name="lowerTitle">mapping netware drives under linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617905</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 08:59:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-14 09:00:00.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063234</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585139
Fecha creación: 2008-04-14 09:09:26.000
<property name="body"><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[The key to creating self-signed certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
]] ></ac:plain-text-body></ac:macro>
<p><span style="color: rgb(51,51,51);">Installing your Certificate with Jakarta-Tomcat.</span><br />
<span style="color: rgb(51,51,51);">(For Linux &amp; Windows)</span><span style="color: rgb(51,51,51);">&nbsp;</span></p>
<table><tbody>
<tr>
<td><p> <span style="color: rgb(51,51,51);">This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.</span> </p></td>
<th><p> <span style="color: rgb(51,51,51);"><strong>Creating a Certificate Signing Request</strong></span><br class="atl-forced-newline" /> </p></th>
</tr>
<tr>
<td><p> <span style="color: rgb(51,51,51);">1. Generate a private key with the following command:</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);"><strong>$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA -keysize 1024 -validity 730 -keystore /path/to/domainname.kdb</strong></span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">You will be prompted for a password. Tomcat uses a default password of &quot;changeit&quot; - do NOT use that. If you use a different password, you will need to specify a custom password in the server.xml configuration file.</span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">In the next field you will be asked &quot;What is your first and last name?&quot; At this prompt, you must specify the common name (FQDN) of your web site.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">You will then be prompted for your organizational unit, organization, etc.</span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">2. Generate the Certificate Signing Request (CSR)</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);"><strong>$JAVA_HOME/bin/keytool -certreq -alias tomcat -keystore /path/to/keystore.kdb -file servername.csr</strong></span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">3. Now go to</span><span style="color: rgb(51,51,51);">&nbsp;</span>ipsCA<span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include BEGIN NEW CERTIFICATE REQUEST and END NEW CERTIFICATE REQUEST in your copied text.</span><br class="atl-forced-newline" />
<br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.</span><br class="atl-forced-newline" /> </p></td>
<td><p>&nbsp;</p></td>
</tr>
<tr>
<td><p> <span style="color: rgb(51,51,51);"><strong>Installing a Server Digital Certificate</strong></span><br class="atl-forced-newline" /> </p></td>
</tr>
<tr>
<td><p> <span style="color: rgb(51,51,51);"><strong>Upload a New SSL Certificate</strong></span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">After you receive your certificate,</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1</strong></span><span style="color: rgb(51,51,51);">.</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:</span><br class="atl-forced-newline" />
IPSServidores.crt <br class="atl-forced-newline" />
IPSCACLASEA1.crt <br class="atl-forced-newline" />
IPS-IPSCABUNDLE.CRT <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">You must first export the certificates in the following format:</span></p>
<ol>
<li><span style="color: rgb(51,51,51);">Copy the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>IPSCACLASEA1 Chained CA certificate</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">into a text editor such as notepad and save as</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>chain.cer</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">on a Windows machine with IE 5+.</span></li>
<li><span style="color: rgb(51,51,51);">Copy your</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>web server certificate</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">into a text editor such as notepad and save as</span><span style="color: rgb(51,51,51);"><em>yourdomain.cer</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">on a Windows machine with IE 5+.</span></li>
<li><span style="color: rgb(51,51,51);">Copy the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>IPSServidores root CA</em></span><span style="color: rgb(51,51,51);"><em>&nbsp;</em></span><span style="color: rgb(51,51,51);"><em>certificate</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">into a text editor and save as</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>root.cer</em></span><span style="color: rgb(51,51,51);"><em>&nbsp;</em></span><span style="color: rgb(51,51,51);">on a Windows machine with IE 5+.</span></li>
<li><span style="color: rgb(51,51,51);">Double-click the root.cer and select the Details tab, then Copy to File, then select the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>Base-64</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">option, give your copied certificate a file name of</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>root_der.cer</strong></span></li>
<li><span style="color: rgb(51,51,51);">Double-click the chain.cer and select Install. Choose &quot;Place all certificates in following store&quot; and select Intermediate Certification Authorities. Complete the Wizard.</span></li>
<li><span style="color: rgb(51,51,51);">Double-click the chain.cer again and select the Details tab, then Copy to File, then select the</span><span style="color: rgb(51,51,51);"><strong>Base-64</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">option, give your copied certificate a file name of</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>chain_der.cer</strong></span></li>
<li><span style="color: rgb(51,51,51);">Double click the youdomain.cer and select the Details tab, then Copy to File, then select the</span><span style="color: rgb(51,51,51);"><strong>PKCS#7 (p7b)</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">option, also select the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>Include all certificates in the certification path</strong></span><span style="color: rgb(51,51,51);">, give your copied certificate a file name of</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>yourdomain.p7b</strong></span><span style="color: rgb(51,51,51);"><strong>The following certificate installations must be executed in the stated order.</strong></span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">1. Import the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>root_der.cer</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">and</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>chain_der.cer</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">files using:</span><span style="color: rgb(51,51,51);"><strong>$ keytool -import -trustcacerts -keystore my.kdb -alias root - file root_der.cer</strong></span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);"><strong>$ keytool -import -trustcacerts -keystore my.kdb -alias chain - file chain_der.cer</strong></span><span style="color: rgb(51,51,51);">{*}</span><span style="color: rgb(51,51,51);">With my.kdb being your keystore.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">2. Import the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>yourdomain.p7b file</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">using:</span><span style="color: rgb(51,51,51);">{*}</span><span style="color: rgb(51,51,51);"><strong>keytool -import -trustcacerts -keystore my.kdb -alias tomcat -file yourdomain.p7b</strong></span><span style="color: rgb(51,51,51);">{*}</span><span style="color: rgb(51,51,51);">With my.kdb being your keystore.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">{*}Update server.xml configuration</span> <span style="color: rgb(51,51,51);">file:\* (file:*)</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">1. Open &quot;$JAKARTA_HOME/conf/server.xml&quot; in a text editor.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">2. Find the following section:</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">&lt;Connector</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">...</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">scheme=&quot;https&quot;</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">secure=&quot;true&quot;</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">keystoreFile=&quot;/pathto/my.kdb&quot;</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">keystorePass=&quot;mypassword&quot;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows)</span></li>
</ol>
</td>
<td><p>&nbsp;</p></td>
</tr>
</tbody></table>
</property>
hibernateVersion: 1
version: 10
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-19 11:40:33.000
versionComment: Migrated to Confluence 4.0
originalVersion: 4063240
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585139</id>
<property name="hibernateVersion">1</property>
<property name="title">Managing Certificates on Tomcat</property>
<property name="lowerTitle">managing certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617907</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:09:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-19 11:40:33.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585153
Fecha creación: 2008-04-27 18:40:03.000
<property name="body"><ac:macro ac:name="info"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>These instructions explain how to access our VPN using Linux without the Cisco vpn client.</p></ac:rich-text-body></ac:macro>
<h2>Setup</h2>
<ol>
<li>Install vpnc
<ac:macro ac:name="code"><ac:parameter ac:name="title">Ubuntu</ac:parameter><ac:plain-text-body><![CDATA[sudo apt-get install vpnc]] ></ac:plain-text-body></ac:macro></li>
<li>Place this file in /etc/vpnc/ <ac:link><ri:attachment ri:filename="suu.conf" /></ac:link></li>
</ol>
<h2>Running</h2>
<ol>
<li><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo vpnc suu]] ></ac:plain-text-body></ac:macro>
or
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo vpnc suu --no-detach]] ></ac:plain-text-body></ac:macro></li>
</ol>
</property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-05-23 22:23:00.000
versionComment: Migrated to Confluence 4.0
originalVersion: 4161629
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585153</id>
<property name="hibernateVersion">1</property>
<property name="title">Setting up VPN access on Linux</property>
<property name="lowerTitle">setting up vpn access on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617921</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-04-27 18:40:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-05-23 22:23:00.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161629</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585159
Fecha creación: 2009-01-14 11:29:48.000
<property name="body"><p>First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as. The example given here is from our xmlbill server.</p>
<h2>Tomcat Startup Script</h2>
<h5>Step 1: To make Tomcat start automatically, you must create a file in /etc/init.d called tomcat. Populate the file with the following:</h5>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=/home/billservice/apps/apache-tomcat-6.0.18
export TOMCAT_USER=billservice
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro>
<p>A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).</p>
<h5>Set to start automatically</h5>
<p>Run the following commands as root:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#chmod 755 /etc/init.d/tomcat
#update-rc.d tomcat defaults
]] ></ac:plain-text-body></ac:macro>
<p>That's it; reboot to verify that everything starts the way you expect.</p></property>
hibernateVersion: 1
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2010-07-20 07:57:04.000
versionComment: Migrated to Confluence 4.0
originalVersion: 10223743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585159</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617927</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2010-07-20 07:57:04.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585174
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get remove haproxy apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common
Next, create a directory /usr/share/haproxy
#mkdir -p /usr/share/haproxy]] ></ac:plain-text-body></ac:macro><p>Next, install the following packages:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev libpcre3-dev socat]] ></ac:plain-text-body></ac:macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>Copy the SSL certs from an existing working node in /etc/ssl/localcerts</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/*.diff .]] ></ac:plain-text-body></ac:macro><p><br />5- Run the following command to patch up to latest level:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:macro><p>10- Link the new executable to the traditional location of haproxy</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ #ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy]] ></ac:plain-text-body></ac:macro><p>11- Make a directory for haproxy to chroot to:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#mkdir /usr/share/haproxy
Note: if you haven't already had haproxy installed, you'll need to create directory /etc/haproxy/errors and copy the default error files in from the haproxy build directory:
#cp ~/haproxy-1.5-dev19/examples/errorfiles/* /etc/haproxy/errors]] ></ac:plain-text-body></ac:macro><p>12- Restart services</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#service haproxy restart]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p>As of November 12, 2013, we are using the development branch (1.5x) of haproxy, which terminates SSL on its own, without the need for Apache or any other piece. &nbsp;This config file WILL NOT WORK with versions prior to 1.5x. &nbsp;Our config looks like this:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 10000
chroot /usr/share/haproxy
stats socket /var/run/haproxy.stat mode 600 level operator
user haproxy
group haproxy
#debug
#quiet
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
maxconn 10000
contimeout 5000
clitimeout 600000
srvtimeout 600000
errorfile 503 /etc/haproxy/errors/503.http
listen admin:8001 :8001
mode http
stats uri /
peers stickypeers
peer halb3 134.250.12.144:9099
peer halb4 134.250.12.145:9099
frontend api
bind 134.250.12.141:80
bind 134.250.12.141:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal-api
backend portal-api
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 5000 check
server api2 134.250.5.25:8080 maxconn 5000 check
frontend xe
bind 134.250.12.167:80
bind 134.250.12.167:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend banner-xe
backend banner-xe
stick-table type ip size 500k expire 8h peers stickypeers
stick on src
stick store-request src
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /
server birchxe 134.250.8.19:8080 maxconn 5000 check
server maplexe 134.250.8.20:8080 maxconn 5000 check
frontend my
bind 134.250.12.8:80
bind 134.250.12.8:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal
backend portal
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk
server portal1 134.250.8.3:80 check
server portal2 134.250.8.4:80 check
# server portal3 134.250.8.5:80 check
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 9
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-09-12 15:58:36.560
originalVersion: 31392092
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585174</id>
<property name="hibernateVersion">1</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617942</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-09-12 15:58:36.560</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585186
Fecha creación: 2010-11-17 16:17:59.000
<property name="body"><h3>Create log4j.properties file</h3>
<p>Create a log4j.properties file in the $CATALINA_HOME/lib directory with the following contents (modify file size as desired):</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
log4j.rootLogger=INFO, CATALINA
# Define all the appenders
log4j.appender.CATALINA=org.apache.log4j.RollingFileAppender
log4j.appender.CATALINA.file=${catalina.base}/logs/catalina.log
log4j.appender.CATALINA.MaxFileSize=50MB
log4j.appender.CATALINA.MaxBackupIndex=200
log4j.appender.CATALINA.layout=org.apache.log4j.PatternLayout
log4j.appender.CATALINA.append=true
log4j.rootCategory=ALL, CATALINA
]] ></ac:plain-text-body></ac:macro>
<h3>Download JAR files</h3>
<p>Obtain a copy of all JAR files from the sherpa server under Tomcat\log4j folder</p>
<h3>Stop Tomcat, place JARs in directories</h3>
<p>Stop Tomcat</p>
<p>Place the log4j-1.2.x.jar in $CATALINA_HOME/lib.<br />
Replace $CATALINA_HOME/bin/tomcat-juli.jar with downloaded tomcat-juli.jar<br />
Place downloaded tomcat-juli-adapters.jar in $CATALINA_HOME/lib<br />
Delete $CATALINA_BASE/conf/logging.properties to prevent java.util.logging generating zero length log files</p>
<p>Start Tomcat</p></property>
hibernateVersion: 2
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-03-15 09:21:11.000
versionComment: Migrated to Confluence 4.0
originalVersion: 21070062
contentStatus: deleted
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585186</id>
<property name="hibernateVersion">2</property>
<property name="title">Configure log4j on servers running Tomcat</property>
<property name="lowerTitle">configure log4j on servers running tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617954</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-11-17 16:17:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-03-15 09:21:11.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">21070062</id>
</property>
<property name="contentStatus">deleted</property>
<property name="position" />
</object>
ID: 37585208
Fecha creación: 2011-01-31 09:34:59.000
<property name="body"><h3>Server-side config files</h3><h5>/etc/services</h5><p>Append the following lines to the end of the file:</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# Local services
rquotad 4003/tcp
rquotad 4003/udp
]] ></ac:plain-text-body></ac:macro><h5>/etc/exports</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[/usr/local/jobout 134.250.7.110(rw,sync) 134.250.7.111(rw,sync)
]] ></ac:plain-text-body></ac:macro><h5>/etc/sysconfig/nfs</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V1="no"
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=4003
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=4001
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=4001
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=4002
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=4001
# Outgoing port statd should used. The default is port
# is random
STATD_OUTGOING_PORT=4004
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS="-vvv"
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS="-vvv"
# Don't load security modules in to the kernel
#SECURE_NFS_MODS="noload"
#
# Don't load sunrpc module.
#RPCMTAB="noload"
#
]] ></ac:plain-text-body></ac:macro><h5>/etc/hosts.allow</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[portmap: 134.250.7.110, 134.250.7.111
lockd: 134.250.7.110, 134.250.7.111
rquotad: 134.250.7.110, 134.250.7.111
mountd: 134.250.7.110, 134.250.7.111
statd: 134.250.7.110, 134.250.7.111
]] ></ac:plain-text-body></ac:macro><h5>/etc/hosts.deny</h5><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL
]] ></ac:plain-text-body></ac:macro><h3>Troubleshooting</h3><p>If things aren't starting up as expected, try the following:</p><ol><li>&nbsp;Stop all services on the server:<ol><li>service nfs stop</li><li>service nfslock stop</li><li>service portmap stop</li><li>service rpcsvcgssd stop</li><li>service rpcgssd stop</li><li>service rpcidmapd stop</li></ol></li><li>Start all services in the following order:<ol><li>service portmap start</li><li>service nfslock start</li><li>service rpcsvcgssd start</li><li>service nfs restart</li></ol></li></ol></property>
hibernateVersion: 1
version: 9
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-06-05 09:35:24.941
originalVersion: 22151231
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585208</id>
<property name="hibernateVersion">1</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37617976</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-06-05 09:35:24.941</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585252
Fecha creación: 2011-04-04 15:52:05.000
<property name="body"><h4>/&lt;tomcat_home&gt;/conf/Catalina/localhost/manager.xml</h4>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0?
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Context configuration file for the Tomcat Manager Web App
$Id: manager.xml 562814 2007-08-05 03:52:04Z markt $
-->
<Context docBase="${catalina.home}/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,134.250.4.*"/>
</Context>
]] ></ac:plain-text-body></ac:macro>
<h4>/&lt;tomcat_home&gt;/conf/server.xml</h4>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
<?xml version='1.0' encoding='utf-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" at this level.
Documentation at /docs/config/server.html
-->
<Server port="8005" shutdown="SHUTDOWN">
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />
<!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<!-- Global JNDI resources
Documentation at /docs/jndi-resources-howto.html
-->
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" Note: A "Service" is not itself a "Container",
so you may not define subcomponents such as "Valves" at this level.
Documentation at /docs/config/service.html
-->
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<!-- <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> -->
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- Define a SSL HTTP/1.1 Connector on port 8443
This connector uses the JSSE configuration, when using APR, the
connector should be using the OpenSSL style configuration
described in the APR documentation -->
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11Protocol"
ciphers="SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA"
SSLEnabled="true"
enableLookups="false"
disableUploadTimeout="true"
acceptCount="100"
maxThreads="200"
scheme="https"
secure="true"
clientAuth="false"
keystoreFile="/home/touchnet/ssl/keystore.wc"
keystorePass="<removedforwiki>"
sslProtocol="TLS"
/>
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host).
Documentation at /docs/config/engine.html -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
<!--For clustering, please take a look at documentation at:
/docs/cluster-howto.html (simple how to)
/docs/config/cluster.html (reference documentation) -->
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
<!-- The request dumper valve dumps useful debugging information about
the request and response data received and sent by Tomcat.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
-->
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase" digest="SHA" />
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
</Host>
</Engine>
</Service>
</Server>
]] ></ac:plain-text-body></ac:macro>
<h4>/&lt;tomcat_home&gt;/conf/logging.properties</h4>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################
1catalina.org.apache.juli.FileHandler.level = WARNING
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.
2localhost.org.apache.juli.FileHandler.level = WARNING
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.
3manager.org.apache.juli.FileHandler.level = WARNING
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix = manager.
4host-manager.org.apache.juli.FileHandler.level = WARNING
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.FileHandler.prefix = host-manager.
java.util.logging.ConsoleHandler.level = WARNING
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler
# For example, set the com.xyz.foo logger to only log SEVERE
# messages:
#org.apache.catalina.startup.ContextConfig.level = WARNING
#org.apache.catalina.startup.HostConfig.level = WARNING
#org.apache.catalina.session.ManagerBase.level = WARNING
#org.apache.catalina.core.AprLifecycleListener.level=WARNING
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-08 09:54:35.000
versionComment: Migrated to Confluence 4.0
originalVersion: 23068743
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585252</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat configuration files - SUU Standard</property>
<property name="lowerTitle">tomcat configuration files - suu standard</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618020</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:52:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-08 09:54:35.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068743</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585255
Fecha creación: 2011-04-04 15:56:08.000
<property name="body"><h4>Populate /etc/init.d/suu_tomcat</h4>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=<tomcat_home_dir>
export TOMCAT_USER=<tomcat user>
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/suu_tomcat start|stop|restart"
;;
esac
exit 0
]] ></ac:plain-text-body></ac:macro>
<p>A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).</p>
<h4>Set for automatic startup</h4>
<p>Run the following as root (Ubuntu and Red Hat):</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
chmod 755 /etc/init.d/suu_tomcat
]] ></ac:plain-text-body></ac:macro>
<p>Next, run the following as root:<br />
For Red Hat:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
chkconfig --add suu_tomcat
chkconfig --level 345 suu_tomcat on
]] ></ac:plain-text-body></ac:macro>
<p>For Ubuntu:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
update-rc.d suu_tomcat defaults
]] ></ac:plain-text-body></ac:macro>
<p>That's it - reboot and make sure it works.</p></property>
hibernateVersion: 1
version: 4
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-04 16:01:34.000
versionComment: Migrated to Confluence 4.0
originalVersion: 23068747
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585255</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat Startup Script</property>
<property name="lowerTitle">tomcat startup script</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618023</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:56:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-04 16:01:34.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068747</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585295
Fecha creación: 2008-06-24 12:31:17.000
<property name="body"><ac:macro ac:name="info"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>Say you have a file with email addresses in it along with other junk and you just want to pull out the email addresses into a file with one email address per line... well this is how you do it.</p></ac:rich-text-body></ac:macro>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cat list.txt | grep -o "[[:alnum:][:graph:]] *@[[:alnum:][:graph:]] *" > newfile.txt
]] ></ac:plain-text-body></ac:macro>
<p>Where list.txt contains the emails along with other stuff and newfile.txt is the file with one email address per line.</p></property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-06-24 12:31:18.000
versionComment: Migrated to Confluence 4.0
originalVersion: 5799968
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585295</id>
<property name="hibernateVersion">1</property>
<property name="title">Pulling Email Addresses From a File</property>
<property name="lowerTitle">pulling email addresses from a file</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618063</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-06-24 12:31:17.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-06-24 12:31:18.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">5799968</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585302
Fecha creación: 2009-06-19 09:04:03.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>A place to collect Tomcat documentation.</p></ac:rich-text-body></ac:macro>
<h2>Tomcat Documentation</h2>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>The following list is a collection of Tomcat documentation from all over our wiki. Anything with the label &quot;tomcat&quot; will show up in this list.</p></ac:rich-text-body></ac:macro>
<ac:macro ac:name="contentbylabel"><ac:parameter ac:name="labels">tomcat</ac:parameter></ac:macro></property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2009-06-19 09:04:04.000
versionComment: Migrated to Confluence 4.0
originalVersion: 12681451
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585302</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat</property>
<property name="lowerTitle">tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618070</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2009-06-19 09:04:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2009-06-19 09:04:04.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681451</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585304
Fecha creación: 2011-06-03 16:52:26.000
<property name="body"><h4>Current /etc/apt/mirror.list contents</h4>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
############# config ##################
#
set base_path /home/itftp/APTMIRROR
#
# if you change the base path you must create the directories below with write privileges
#
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
set cleanscript $base_path/var/clean.sh
set defaultarch i386
set nthreads 10
set _tilde 0
#
############# end config ##############
# Main packages for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
# Updates for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
# Security updates
deb-i386 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu hardy-security universe
deb-i386 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security universe
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu lucid-security universe
deb-i386 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security universe
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu maverick-security universe
deb-i386 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security universe
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu natty-security universe
deb-i386 http://security.ubuntu.com/ubuntu natty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu natty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu natty-security multiverse
# Partner repo
deb-i386 http://archive.canonical.com/ubuntu hardy partner
deb-amd64 http://archive.canonical.com/ubuntu hardy partner
deb-i386 http://archive.canonical.com/ubuntu jaunty partner
deb-amd64 http://archive.canonical.com/ubuntu jaunty partner
deb-i386 http://archive.canonical.com/ubuntu lucid partner
deb-amd64 http://archive.canonical.com/ubuntu lucid partner
deb-i386 http://archive.canonical.com/ubuntu maverick partner
deb-amd64 http://archive.canonical.com/ubuntu maverick partner
deb-i386 http://archive.canonical.com/ubuntu natty partner
deb-amd64 http://archive.canonical.com/ubuntu natty partner
# Extras (added as of Maverick)
deb-i386 http://extras.ubuntu.com/ubuntu maverick main
deb-amd64 http://extras.ubuntu.com/ubuntu maverick main
deb-i386 http://extras.ubuntu.com/ubuntu natty main
deb-amd64 http://extras.ubuntu.com/ubuntu natty main
# Cleanup scripts
clean http://archive.ubuntu.com
clean http://security.ubuntu.com
clean http://archive.canonical.com
]] ></ac:plain-text-body></ac:macro>
<h4>Current soft links in /var/www directory</h4>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
root@sherpa:/var/www# ls -aslh
total 12K
4.0K drwxr-xr-x 2 root root 4.0K 2011-06-03 16:44 .
4.0K drwxr-xr-x 15 root root 4.0K 2011-06-02 16:58 ..
0 lrwxrwxrwx 1 root root 53 2011-06-03 16:44 extras -> /home/itftp/APTMIRROR/mirror/extras.ubuntu.com/ubuntu
4.0K -rw-r--r-- 1 root root 177 2011-06-02 16:58 index.html
0 lrwxrwxrwx 1 root root 54 2011-06-03 09:46 ubuntu -> /home/itftp/APTMIRROR/mirror/archive.ubuntu.com/ubuntu
0 lrwxrwxrwx 1 root root 57 2011-06-03 09:46 ubuntupartner -> /home/itftp/APTMIRROR/mirror/archive.canonical.com/ubuntu
0 lrwxrwxrwx 1 root root 55 2011-06-03 09:46 updates -> /home/itftp/APTMIRROR/mirror/security.ubuntu.com/ubuntu
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-06-03 16:56:20.000
versionComment: Migrated to Confluence 4.0
originalVersion: 23494876
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585304</id>
<property name="hibernateVersion">1</property>
<property name="title">APT-MIRROR configuration</property>
<property name="lowerTitle">apt-mirror configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618072</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-06-03 16:52:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-06-03 16:56:20.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23494876</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585316
Fecha creación: 2008-07-03 12:45:33.000
<property name="body"><ac:macro ac:name="info"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>PostgreSQL is an open source database. This document is a collection of notes for postgresql administrators.</p></ac:rich-text-body></ac:macro>
<h3>Enabling remote connections to a postgresql database</h3>
<p>$POSTGRES_HOME will be something like <code>/etc/postgresql/8.3/main</code></p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd $POSTGRES_HOME
sudo vim postgresql.conf
]] ></ac:plain-text-body></ac:macro>
<p>Find the line</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[#listen_address = 'localhost']] ></ac:plain-text-body></ac:macro>
<p> and change it to </p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[listen_address = '*']] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-07-03 12:45:34.000
versionComment: Migrated to Confluence 4.0
originalVersion: 6226006
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585316</id>
<property name="hibernateVersion">1</property>
<property name="title">PostgreSQL</property>
<property name="lowerTitle">postgresql</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618084</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-07-03 12:45:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-07-03 12:45:34.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226006</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585317
Fecha creación: 2011-08-05 07:47:21.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>This is the root page for our HAProxy documentation.</p></ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>How to check on the status of things</strong></p>
<ul>
<li><strong>Check status of HAProxy</strong>
<ul>
<li><a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb3.suu.edu:8001" rel="nofollow">http://halb3.suu.edu:8001</a></li>
</ul>
</li>
<li><strong>Check the status of the nodes</strong>
<ul>
<li>SSH into one of the nodes
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
ssh halb1.suu.edu
sudo crm_mon --one-shot -V | grep Online
# The output will look something like this:
Online: [ halb1 halb2 halb3 ]
]] ></ac:plain-text-body></ac:macro></li>
</ul>
</li>
</ul>
</ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<ul>
<li>We have three load balancer nodes running in a cluster. They are active/active and will automatically take over for the other if one goes down.</li>
<li>The load balance cluster has multiple shared IP addresses. The shared IP addresses are the user-facing IPs and that is where firewall rules are applied for user access.</li>
</ul>
<p>Current production setup example: (note we have more stuff behind our load balancers, but this demonstrates the basic idea.)</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
shared IP=12.141
^^^^^^^^
12.142 12.143 5.24 5.25
-------+------------+-----------+-----+---
| | | |
+--+--+ +--+--+ +-+-+ +-+-+
| LB1 | | LB2 | | A | | B |
+-----+ +-----+ +---+ +---+
haproxy haproxy web servers
heartbeat heartbeat
pacemaker pacemaker
]] ></ac:plain-text-body></ac:macro>
<p><strong>LB1</strong> = halb1.suu.edu<br />
<strong>LB2</strong> = halb2.suu.edu<br />
<strong>A</strong> = api1.suu.edu<br />
<strong>B</strong> = api2.suu.edu<br />
<strong>shared IP</strong> = api.suu.edu</p></property>
hibernateVersion: 1
version: 8
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2012-03-21 10:07:34.000
versionComment: Migrated to Confluence 4.0
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585317</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618085</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2012-03-21 10:07:34.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585320
Fecha creación: 2011-08-09 08:18:56.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>These are the steps you need to take to put a new service behind our HAProxy load balancers.<br />
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.</p></ac:rich-text-body></ac:macro>
<h2>Setup HAProxy</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>You will need to modify the same file on both load balancer nodes.</li>
<li>Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.</li>
<li>You should also know the front-facing ipaddress that your service will be using for this step.</li>
</ul>
</ac:rich-text-body></ac:macro>
<p><strong>Edit <code>/etc/haproxy/haproxy.cfg</code> (on both nodes)</strong></p>
<p>You will be adding a new server farm. Here is an example farm.</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.25:8080 maxconn 1 check
]] ></ac:plain-text-body></ac:macro>
<p><ac:emoticon ac:name="warning" /> The listen port must be unique, so if 8000 and 8001 are taken, use 8002</p>
<p><strong>Restart haproxy</strong></p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/haproxy restart
]] ></ac:plain-text-body></ac:macro>
<p><strong>Commit your changes</strong></p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/haproxy/
sudo hg commit -m "New server config."
]] ></ac:plain-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
<a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a>
<a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></p></ac:rich-text-body></ac:macro>
<h2>Setup Apache</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>The same configuration will go on both load balander nodes, however, they are not exactly the same. IP addresses will be different.</li>
<li>You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.</li>
</ul>
</ac:rich-text-body></ac:macro>
<ol>
<li>Create a new virtual host configuration
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
]] ></ac:plain-text-body></ac:macro></li>
<li>Modify yourservice-ssl
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
]] ></ac:plain-text-body></ac:macro></li>
<li>Enable your new virtual host
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo a2ensite yourservice-ssl
]] ></ac:plain-text-body></ac:macro></li>
<li>Reload apache
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/apache2 reload
]] ></ac:plain-text-body></ac:macro></li>
<li>Commit your changes
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo hg add yourservice-ssl
sudo hg commit -m "New virtual host config file."
]] ></ac:plain-text-body></ac:macro></li>
<li>Now do the same thing on the other load balancer node, but make sure the IP addresses for the <strong><code>ProxyPass</code></strong> and <strong><code>ProxyPassReverse</code></strong> are set to the IP address of that node.</li>
</ol>
<h2>Setup your front-facing ipaddress</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.</li>
<li>What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker</li>
</ul>
</ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>Tip:</strong><br />
The following commands only need to be run on one node. They will be replicated automatically to the second node.<br />
<strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu<br />
*eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro>
<ol>
<li><strong>Setup ipaddress resource</strong>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask=255.255.255.0 nic=eth0
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro></li>
<li><strong>Set a preferred node for the ip resource</strong><br />
This tells Pacemaker which node the resource ip should live on when both nodes are up.
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro></li>
<li><strong>Setup Pacemaker monitoring</strong>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 40s:20s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro></li>
<li><strong>Show running configuration</strong>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro></li>
</ol>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.</p></ac:rich-text-body></ac:macro></property>
hibernateVersion: 1
version: 8
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-08-30 09:01:41.000
versionComment: Migrated to Confluence 4.0
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585320</id>
<property name="hibernateVersion">1</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618088</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-08-30 09:01:41.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585323
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:macro><h2>Configure Apache to run on ports 445, 5001, and 5000 in addition to the defaults</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[# Edit apache ports file to listen on additional ports
vim /etc/apache/ports.conf
# It should look like the following:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
#NameVirtualHost *:80
Listen 80
Listen 81
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:macro><h2>Configure Apache Virtual Host</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
Copy all files from working node (e.g. halb1) /etc/apache2/sites-available/
Remove default-ssl
Ensure default has correct site restrictions for server-status
]] ></ac:plain-text-body></ac:macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:macro><h2>Install heartbeat and pacemaker</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Copy working ha.cf file from another node (e.g. halb1), being sure to add your new node to the list. It should look something like this
sudo vim /etc/ha.d/ha.cf
autojoin any
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
node halb3
node halb4
crm respawn
]] ></ac:plain-text-body></ac:macro><h2>Modify /etc/default/haproxy file</h2><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Copy existing haproxy.cfg</strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[Copy an existing /etc/haproxy/haproxy.cfg file from a working node to your new node.]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Restart heartbeat</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:macro><p><strong>Show running configuration</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 14
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-08-06 10:01:48.713
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585323</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618091</id>
</element>
</collection>
<property name="version">14</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-08-06 10:01:48.713</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585334
Fecha creación: 2011-09-13 10:22:20.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>Documentation for managing a firewall on an Ubuntu box.</p></ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<p>One of the simplest ways to manage a firewall on Ubuntu is to use the command <strong><code>ufw</code></strong>. It stands for &quot;uncomplicated firewall&quot; and it is installed by default. The firewall is not running by default though.</p>
<h2>Initial Setup</h2>
<p><strong>Set default policy to deny</strong></p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo ufw default deny
]] ></ac:plain-text-body></ac:macro>
<p><strong>Turn on the firewall</strong></p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo ufw enable
]] ></ac:plain-text-body></ac:macro>
<h2>Some sample rules</h2>
<p><strong>Allow a specific IP address on any port.</strong></p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo ufw allow from 134.250.4.188
]] ></ac:plain-text-body></ac:macro>
<p><strong>Allow a subnet range to a specific port</strong></p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
# This allows ssh access from the VPN subnet.
sudo ufw allow from 134.250.236.0/24 to any port 22
]] ></ac:plain-text-body></ac:macro>
<p><strong>Block a specific IP</strong></p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
sudo ufw deny 134.250.4.77
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-09-13 10:23:18.000
versionComment: Migrated to Confluence 4.0
originalVersion: 23888007
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585334</id>
<property name="hibernateVersion">1</property>
<property name="title">Ubuntu Firewall - UFW</property>
<property name="lowerTitle">ubuntu firewall - ufw</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618102</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-09-13 10:22:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-09-13 10:23:18.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23888007</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 37585337
Fecha creación: 2009-07-01 16:52:46.000
<property name="body"><ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 1.0 (buildd@palmer) Sun Feb 1 20:21:04 UTC 2009
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "ServerFlags"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "DELL 2407WFP"
HorizSync 30.0 - 83.0
VertRefresh 56.0 - 60.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 9800 GT"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "1"
Option "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-1: 1920x1200_60 +1920+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
]] ></ac:plain-text-body></ac:macro></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 13:46:30.000
versionComment: Migrated to Confluence 4.0
originalVersion: 12681527
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">37585337</id>
<property name="hibernateVersion">1</property>
<property name="title">Xorg configuration file for nVidia 9800GT Ubuntu 9.04 Jaunty</property>
<property name="lowerTitle">xorg configuration file for nvidia 9800gt ubuntu 9.04 jaunty</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">37618105</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-07-01 16:52:46.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 13:46:30.000</property>
<property name="versionComment">Migrated to Confluence 4.0</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681527</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 39157783
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol><li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM</li><li>Use fdisk to create new partition on the disk.</li><li>Extend existing volume group onto new partition.</li><li>Extend existing logical volume onto new space.</li><li>Extend filesystem.</li></ol><p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p><ol><li>fdisk /dev/sdc</li><li>n</li><li>p</li><li>1 &lt;Enter&gt; &lt;Enter&gt; &nbsp;(twice)</li><li>t</li><li>8e</li><li>w</li><li>pvcreate /dev/sdc1</li><li>vgdisplay (to get volgroupname)</li><li>vgextend &lt;volgroupname&gt; /dev/sdc1</li><li>lvdisplay (to get name of logical volume you want to extend)</li><li>lvextend -L +10G &lt;lvname&gt; /dev/sdc1 &nbsp;(this will extend the volume by 10 gigabytes. &nbsp;If you want to use the whole disk, just take out the -L +10G part)</li><li>resize2fs &lt;lvname&gt;</li></ol><p>Done - verify new size</p></property>
hibernateVersion: 1
version: 5
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2015-06-24 14:07:28.932
originalVersion: 13795381
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">39157783</id>
<property name="hibernateVersion">1</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">39190545</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2015-06-24 14:07:28.932</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 39157784
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol><li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM &nbsp;(add it to a NEW controller, i.e. scsi 1:0, 2:0, 3:0 and it will detect it without a reboot)</li><li>Use fdisk to create new partition on the disk.</li><li>Extend existing volume group onto new partition.</li><li>Extend existing logical volume onto new space.</li><li>Extend filesystem.</li></ol><p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p><ol><li>fdisk /dev/sdc</li><li>n</li><li>p</li><li>1 &lt;Enter&gt; &lt;Enter&gt; &nbsp;(twice)</li><li>t</li><li>8e</li><li>w</li><li>pvcreate /dev/sdc1</li><li>vgdisplay (to get volgroupname)</li><li>vgextend &lt;volgroupname&gt; /dev/sdc1</li><li>lvdisplay (to get name of logical volume you want to extend)</li><li>lvextend -L +10G &lt;lvname&gt; /dev/sdc1 &nbsp;(this will extend the volume by 10 gigabytes. &nbsp;If you want to use the whole disk, just take out the -L +10G part)</li><li>resize2fs &lt;lvname&gt;</li></ol><p>Done - verify new size</p></property>
hibernateVersion: 2
version: 6
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-01-07 14:10:52.101
originalVersion: 13795381
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">39157784</id>
<property name="hibernateVersion">2</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">39190546</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">39223345</id>
</element>
</collection>
<property name="version">6</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-01-07 14:10:52.101</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 39157785
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol><li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM &nbsp;(add it to a NEW controller, i.e. scsi 1:0, 2:0, 3:0 and it will detect it without a reboot)</li><li>Find the identifier of the new disk by running 'dmesg |grep sd' at the command line. &nbsp;The newest one should be the last one in the list (i.e. sdb, sdc, etc.); use fdisk to create new partition on the disk.</li><li>Extend existing volume group onto new partition.</li><li>Extend existing logical volume onto new space.</li><li>Extend filesystem.</li></ol><p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p><ol><li>fdisk /dev/sdc</li><li>n</li><li>p</li><li>1 &lt;Enter&gt; &lt;Enter&gt; &nbsp;(twice)</li><li>t</li><li>8e</li><li>w</li><li>pvcreate /dev/sdc1</li><li>vgdisplay (to get volgroupname)</li><li>vgextend &lt;volgroupname&gt; /dev/sdc1</li><li>lvdisplay (to get name of logical volume you want to extend)</li><li>lvextend -L +10G &lt;lvname&gt; /dev/sdc1 &nbsp;(this will extend the volume by 10 gigabytes. &nbsp;If you want to use the whole disk, just take out the -L +10G part)</li><li>resize2fs &lt;lvname&gt;</li></ol><p>Done - verify new size</p></property>
hibernateVersion: 2
version: 7
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-01-07 14:13:44.309
originalVersion: 13795381
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">39157785</id>
<property name="hibernateVersion">2</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">39190547</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">39223347</id>
</element>
</collection>
<property name="version">7</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-01-07 14:13:44.309</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 39157786
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol><li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM &nbsp;(add it to a NEW controller, i.e. scsi 1:0, 2:0, 3:0 and it will detect it without a reboot)</li><li>Find the identifier of the new disk by running 'dmesg |grep sd' at the command line. &nbsp;The newest one should be the last one in the list (i.e. sdb, sdc, etc.); use fdisk to create new partition on the disk.</li><li>Extend existing volume group onto new partition.</li><li>Extend existing logical volume onto new space.</li><li>Extend filesystem.</li></ol><p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p><ol><li>fdisk /dev/sdc</li><li>n</li><li>p</li><li>1 &lt;Enter&gt; &lt;Enter&gt; &nbsp;(twice)</li><li>t</li><li>8e</li><li>w</li><li>pvcreate /dev/sdc1</li><li>vgdisplay (to get volgroupname)</li><li>vgextend &lt;volgroupname&gt; /dev/sdc1</li><li>lvdisplay (to get name of logical volume you want to extend)</li><li>lvextend -L +10G /dev/mapper/&lt;lvname&gt; &nbsp;/dev/sdc1 &nbsp;(this will extend the volume by 10 gigabytes. &nbsp;If you want to use the whole disk, just take out the -L +10G part)</li><li>resize2fs &lt;lvname&gt;</li></ol><p>Done - verify new size</p></property>
hibernateVersion: 2
version: 8
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-01-07 14:14:42.694
originalVersion: 13795381
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">39157786</id>
<property name="hibernateVersion">2</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">39190548</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">39223349</id>
</element>
</collection>
<property name="version">8</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-01-07 14:14:42.694</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 41385990
Fecha creación: 2008-07-03 12:45:33.000
<property name="body"><ac:structured-macro ac:macro-id="f255400c-9f2d-4828-8d0c-dbc73880aaf9" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>PostgreSQL is an open source database. This document is a collection of notes for postgresql administrators.</p></ac:rich-text-body></ac:structured-macro>
<h3>Enabling remote connections to a postgresql database</h3>
<p>$POSTGRES_HOME will be something like <code>/etc/postgresql/8.3/main</code></p>
<ac:structured-macro ac:macro-id="5dd4de3d-e03e-4350-94c7-6ddf1351a7f8" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
cd $POSTGRES_HOME
sudo vim postgresql.conf
]] ></ac:plain-text-body></ac:structured-macro>
<p>Find the line</p>
<ac:structured-macro ac:macro-id="50b62112-30f4-4285-916f-ceab2333ddb3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#listen_address = 'localhost']] ></ac:plain-text-body></ac:structured-macro>
<p> and change it to </p>
<ac:structured-macro ac:macro-id="c8313202-df34-48ae-a34e-79955a943e9b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[listen_address = '*']] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-07-03 12:45:35.000
versionComment: Migrated to Confluence 5.3
originalVersion: 6226006
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">41385990</id>
<property name="hibernateVersion">1</property>
<property name="title">PostgreSQL</property>
<property name="lowerTitle">postgresql</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">41418758</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-07-03 12:45:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-07-03 12:45:35.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226006</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 41385991
Fecha creación: 2008-07-03 12:45:33.000
<property name="body"><ac:structured-macro ac:macro-id="f255400c-9f2d-4828-8d0c-dbc73880aaf9" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body><p>PostgreSQL is an open source database. This document is a collection of notes for postgresql administrators.</p></ac:rich-text-body></ac:structured-macro><h3>Enabling remote connections to a postgresql database</h3><p>$POSTGRES_HOME will be something like <code>/etc/postgresql/8.3/main</code></p><ac:structured-macro ac:macro-id="5dd4de3d-e03e-4350-94c7-6ddf1351a7f8" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[cd $POSTGRES_HOME
sudo vim postgresql.conf
]] ></ac:plain-text-body></ac:structured-macro><p>Find the line</p><ac:structured-macro ac:macro-id="50b62112-30f4-4285-916f-ceab2333ddb3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#listen_address = 'localhost']] ></ac:plain-text-body></ac:structured-macro><p>and change it to</p><ac:structured-macro ac:macro-id="c8313202-df34-48ae-a34e-79955a943e9b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[listen_address = '*']] ></ac:plain-text-body></ac:structured-macro><h1>Theater Manager Database Upgrade Procedure</h1><p>On April 19, 2016, we were asked to upgrade the Theatre Manager Postgresql instance from 9.5 (the latest in the Ubuntu repos) to 9.5. &nbsp;Here are the steps we took: (from&nbsp;<a href="http://no0p.github.io/postgresql/2014/03/29/upgrading-pg-ubuntu.html">http://no0p.github.io/postgresql/2014/03/29/upgrading-pg-ubuntu.html</a>)</p><p>&nbsp;</p><p style="text-align: justify;">For more core concepts take a look at&nbsp;<a href="http://www.postgresql.org/docs/9.3/static/pgupgrade.html">the official documentation for pg_upgrade</a>&nbsp;tool.</p><h2 style="text-align: justify;">Installing 9.5 alongside 9.3</h2><p style="text-align: justify;">First we install 9.5 from the&nbsp;<a href="https://wiki.postgresql.org/wiki/Apt">postgres apt repos</a>.</p><pre><code>echo &quot;deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main&quot; &gt;
/etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc
| sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install postgresql-9.5 postgresql-contrib-9.5</code></pre><p style="text-align: justify;">We note that the debian packages will start the 9.5 server and configure it to run on a port other than the port 9.3 is running on, likely 5433.</p><p style="text-align: justify;">At this point, install any shared libraries which your 9.3 database has installed and are required for&nbsp;<code>CREATE EXTENSION</code>&nbsp;commands to complete successfully. For example, if your 9.3 system uses postGIS, install postGIS packages for the 9.5 system. Identifying all extensions can be a laborious process since the pg_extension catalog table is scoped to the current database connection. Nonetheless it is absolutely necessary since the upgrade will fail without properly installed libraries.</p><h2 style="text-align: justify;">Ensuring permissions</h2><p style="text-align: justify;">To execute pg_upgrade the&nbsp;<strong>postgres</strong>&nbsp;user will need to be able to connect to both databases. The databases will not be running on their normal ports for the upgrade, so it is somewhat safer to make less secure updates to pg_hba.conf. An entry like the following rule is pretty reasonable:</p><pre><code>local all postgres peer</code></pre><p style="text-align: justify;">Depending on your tolerance for farkling with pg_hba.conf you could also change all entries to trust.</p><h2 style="text-align: justify;">Shutdown</h2><p style="text-align: justify;">Neither database should be online during the upgrade process, as that could lead to an inconsistent copy.</p><pre><code>sudo service postgresql stop 9.5
sudo service postgresql stop 9.3</code></pre><p style="text-align: justify;">Great service is down.</p><h2 style="text-align: justify;">Executing the upgrade, quickly</h2><p style="text-align: justify;">When executed pg_upgrade starts both servers on an alternative port, runs some sanity checks, and performs the necessary conversion and copy routines. It&rsquo;s simple to run:</p><pre><code>sudo su postgres
/usr/lib/postgresql/9.5/bin/pg_upgrade -b /usr/lib/postgresql/9.3/bin/
-B /usr/lib/postgresql/9.5/bin/
-d /var/lib/postgresql/9.3/main
-D /var/lib/postgresql/9.5/main
-o ' -c config_file=/etc/postgresql/9.3/main/postgresql.conf'
-O ' -c config_file=/etc/postgresql/9.5/main/postgresql.conf'</code></pre><p style="text-align: justify;">Note that the command references the full path of the pg_upgrade binary. It&rsquo;s important to use the binary for the target version.</p><p style="text-align: justify;">If this command prints an error message see the section below titled Don&rsquo;t Panic.</p><h2 style="text-align: justify;">Starting the new server</h2><p style="text-align: justify;">Now update the configuration in&nbsp;<code>/etc/postgresql/9.5/main/postgresql.conf</code>. Don&rsquo;t copy the old file as it will contain old data and config directory directives. This is a great opportunity to review your GUCs.</p><p style="text-align: justify;">Key updates are the&nbsp;<code>listen_address</code>&nbsp;and&nbsp;<code>port</code>&nbsp;directives. Then start the server carefully remembering the version suffix.</p><pre><code> sudo service postgresql start 9.5</code></pre><p style="text-align: justify;">You should now be able to restart all services which rely on the database and verify everything is working as expected.</p><h2 style="text-align: justify;">Cleaning up</h2><p style="text-align: justify;">Once satisified simply remove the 9.3 installation.</p><pre><code> sudo apt-get remove postgresql-9.3</code></pre><p style="text-align: justify;">You may choose to purge the package as well eventually.</p><h2 style="text-align: justify;">Don&rsquo;t panic</h2><p style="text-align: justify;">Depending on your configuration, there is a chance that the pg_upgrade command will fail (safely). If this happens you have the option to just restart the old server and take a break.</p><pre><code>sudo service postgresql start 9.3</code></pre><p style="text-align: justify;">And take a moment to re-evaluate.</p><p style="text-align: justify;">If you forgot about a 1TB tablespace on a rotating drive, it is okay to send an interrupt to pg_upgrade as long as you wipe the target database to a fresh install state.</p><h2 style="text-align: justify;">Final Remarks</h2><p style="text-align: justify;">This post covers a very basic upgrade process which allows for a downtime maintenance window. Its focus is on ease of safely completing the upgrade rather than minimizing downtime. There are pg_upgrade options you should be aware of such as direct linking the data files, which can save the time required to copy a potentially large database. Of course this is slightly more dangerous as it limits opportunities for backing out.</p><p style="text-align: justify;">Good luck!</p><p>&nbsp;</p></property>
hibernateVersion: 2
version: 4
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-04-19 11:23:57.738
originalVersion: 6226006
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">41385991</id>
<property name="hibernateVersion">2</property>
<property name="title">PostgreSQL</property>
<property name="lowerTitle">postgresql</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">41418759</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">41517062</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">41517061</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">41517060</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-07-03 12:45:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-04-19 11:23:57.738</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226006</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 41812005
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol><li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM &nbsp;(add it to a NEW controller, i.e. scsi 1:0, 2:0, 3:0 and it will detect it without a reboot)</li><li>Find the identifier of the new disk by running 'dmesg |grep sd' at the command line. &nbsp;The newest one should be the last one in the list (i.e. sdb, sdc, etc.); use fdisk to create new partition on the disk.</li><li>Extend existing volume group onto new partition.</li><li>Extend existing logical volume onto new space.</li><li>Extend filesystem.</li></ol><p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p><ol><li>fdisk /dev/sdc</li><li>n</li><li>p</li><li>1 &lt;Enter&gt; &lt;Enter&gt; &nbsp;(twice)</li><li>t</li><li>8e</li><li>w</li><li>pvcreate /dev/sdc1</li><li>vgdisplay (to get volgroupname)</li><li>vgextend &lt;volgroupname&gt; /dev/sdc1</li><li>lvdisplay (to get name of logical volume you want to extend)</li><li>lvextend -L +10G /dev/mapper/&lt;lvname&gt; &nbsp;/dev/sdc1 &nbsp;(this will extend the volume by 10 gigabytes. &nbsp;If you want to use the whole disk, just take out the -L +10G part)</li><li>resize2fs /dev/mapper/&lt;lvname&gt;</li></ol><p>Done - verify new size</p></property>
hibernateVersion: 3
version: 9
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-01-07 14:15:02.463
originalVersion: 13795381
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">41812005</id>
<property name="hibernateVersion">3</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">41844773</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">41877563</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-01-07 14:15:02.463</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 41812007
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol><li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM &nbsp;(add it to a NEW controller, i.e. scsi 1:0, 2:0, 3:0 and it will detect it without a reboot)</li><li>Find the identifier of the new disk by running 'dmesg |grep sd' at the command line. &nbsp;The newest one should be the last one in the list (i.e. sdb, sdc, etc.); use fdisk to create new partition on the disk.</li><li>Extend existing volume group onto new partition.</li><li>Extend existing logical volume onto new space.</li><li>Extend filesystem.</li></ol><p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p><ol><li>fdisk /dev/sdc</li><li>n</li><li>p</li><li>1 &lt;Enter&gt; &lt;Enter&gt; &nbsp;(twice)</li><li>t</li><li>8e</li><li>w</li><li>pvcreate /dev/sdc1</li><li>vgdisplay (to get volgroupname)</li><li>vgextend &lt;volgroupname&gt; /dev/sdc1</li><li>lvdisplay (to get name of logical volume you want to extend)</li><li>lvextend -L +10G /dev/mapper/&lt;lvname&gt; &nbsp;/dev/sdc1 &nbsp;(this will extend the volume by 10 gigabytes. &nbsp;If you want to use the whole disk, just take out the -L +10G part)</li><li>resize2fs /dev/mapper/&lt;lvname&gt;</li></ol><p>Done - verify new size</p><p>&nbsp;</p><p>&nbsp;</p><p>COMMAND-LINE OPTIONS:</p><p>&nbsp;</p><p>89 pvcreate /dev/xvdb1<br /> 90 vgcreate<br /> 91 vgcreate --help<br /> 92 vgcreate mvg /dev/xdvb1<br /> 93 vgcreate mvg /dev/xvdb<br /> 94 vgcreate mvg /dev/xvdb1<br /> 97 lvcreate --help<br /> 101 lvcreate -L 8192M -n tmpvol mvg<br /> 104 lvcreate -L 8192M -n swapvol mvg<br /> 105 lvcreate -L 2048M -n homevol mvg<br /> 106 lvcreate -L 5G -n varvol mvg<br /> 108 lvcreate -L FREE -n u01vol mvg<br /> 109 lvcreate -l FREE -n u01vol mvg<br /> 110 man lvcreate<br /> 111 lvcreate -n u01vol mvg<br /> 112 lvcreate -L -n u01vol mvg<br /> 115 lvcreate -l 12210 -n u01vol mvg<br /> 122 lvcreate -L 500G -n u01vol mvg<br /> 123 lvcreate -l 122110 -n u01vol mvg<br /> 350 pvcreate /dev/xvdf1</p></property>
hibernateVersion: 3
version: 10
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-05-11 09:46:00.538
originalVersion: 13795381
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">41812007</id>
<property name="hibernateVersion">3</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">41844775</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">41877565</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-05-11 09:46:00.538</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 42762294
Fecha creación: 2016-07-21 16:43:48.238
<property name="body"><p>Readme.md</p><ac:structured-macro ac:macro-id="c5835801-f3a8-4934-8d67-35f5719ce7d7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[mysql2postgresql
================
Converter mysql schema and data to postgresql
Usage
1. Create dump in xml format using command: `mysqldump --xml -u USER_NAME DB_NAME > DUMP_FILE_NAME`
2. Run converter using command: `php converter.php -i DUMP_FILE_NAME -o PSQL_FILE_NAME`
Additional options
* `-b50` - set batch count (used on insert data). By default batch count = 200
* `-n` - non export structure
Restriction
This converter does not support foreign keys, because mysql does not return foreign key in xml dump
Also You must have installed locally php postgresql extension]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>converter.php</p><ac:structured-macro ac:macro-id="e605a09b-959a-4e92-8e43-6e2562f45733" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[<?php
/**
* Created by PhpStorm.
* User: mihailshumilov
* Date: 22.11.13
* Time: 09:30
*/
require( "Converter.class.php" );
$options = getopt( "i:o:b::n", array( "input-file:", "output-file:", "batch-count::" , "no-export-structure") );
$iFilePath = isset( $options["i"] ) ? $options["i"] : $options["input-file"];
$oFilePath = isset( $options["o"] ) ? $options["o"] : $options["output-file"];
$batchCount = isset( $options["b"] ) ? $options["b"] : ( isset( $options["batch-count"] ) ? $options["batch-count"] : false );
$exportStructure = isset( $options["n"] ) ? false : ( isset( $options["no-export-structure"] ) ? false : true );
$conv = new Convertor( array(
"iFileName" => $iFilePath,
"oFileName" => $oFilePath,
"batchCount" => $batchCount,
"exportStructure" => $exportStructure
) );
$conv->run();
exit( 0 );]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>Converter.class.php</p><ac:structured-macro ac:macro-id="b256680b-01a8-48ef-af9f-c0d95b7356ca" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[<?php
/**
* Created by PhpStorm.
* User: mihailshumilov
* Date: 23.02.14
* Time: 16:27
*/
class Convertor
{
private $iFileName;
private $oFileName;
private $exportStructure;
private $iFh;
private $oFh;
private $tableFields = array();
private $row = array();
private $lastTable = null;
private $lastRow = null;
private $tableData = false;
private $fieldOpen = false;
private $timestampType = "timestamp with time zone";
private $seq = false;
private $insertRowField = array();
private $maxBatchCount = 200;
private $batchCount = 0;
private $defaultWords = array(
'CURRENT_TIMESTAMP'
);
public function __construct( $params )
{
if (isset( $params['iFileName'] ) && ! empty( $params['iFileName'] )) {
$this->iFileName = $params['iFileName'];
} else {
throw new Exception( "Input file name not set" );
}
if (isset( $params['oFileName'] ) && ! empty( $params['oFileName'] )) {
$this->oFileName = $params['oFileName'];
} else {
throw new Exception( "Output file name not set" );
}
if (isset( $params['batchCount'] ) && $params['batchCount']) {
if (filter_var( $params['batchCount'], FILTER_VALIDATE_INT )) {
$this->maxBatchCount = $params['batchCount'];
} else {
throw new Exception( "Parameter `batchCount` must be positive integer" );
}
}
if (isset( $params['exportStructure'] )) {
$this->exportStructure = $params['exportStructure'];
} else {
throw new Exception( "Export database structure not set" );
}
$this->checkFiles();
}
private function checkFiles()
{
if (!file_exists( $this->iFileName )) {
throw new RuntimeException( "File `{$this->iFileName}` does not exists" );
}
if (!$this->iFh = @fopen( $this->iFileName, "r" )) {
throw new RuntimeException( "Can't open `{$this->iFileName}`" );
}
if (!$this->oFh = @fopen( $this->oFileName, "w+" )) {
throw new RuntimeException( "Can't open `{$this->oFileName}` to write" );
}
}
public function __destruct()
{
fclose( $this->iFh );
fclose( $this->oFh );
}
public function run()
{
$xml = xml_parser_create();
xml_set_element_handler( $xml, array( &$this, "start" ), array( &$this, "end" ) );
xml_set_character_data_handler( $xml, array( &$this, "data" ) );
xml_parser_set_option( $xml, XML_OPTION_CASE_FOLDING, false );
$totalFileSize = filesize( $this->iFileName );
$processed = 0;
echo "\nProcess:0%\r";
while ($data = fread( $this->iFh, 4096 )) {
xml_parse( $xml, $data, feof( $this->iFh ) ) or die( "Can't parse XML data" );
$processed += 4096;
$percentage = round( $processed / $totalFileSize * 100, 2 );
echo "Processed: {$percentage}%\r";
}
xml_parser_free( $xml );
echo "\r";
echo "Processed: 100%\n";
}
private function start( $parser, $name, $attrs )
{
switch ($name) {
case "table_structure":
$this->tableFields = array();
$this->tableFields['name'] = $attrs['name'];
break;
case "field":
if ($this->tableData) {
$this->row[$attrs['name']] = null;
$this->lastRow = $attrs['name'];
$this->fieldOpen = true;
} else {
$this->convert_field_data( $attrs );
}
break;
case "key":
$this->convert_key_data( $attrs );
break;
case "table_data":
$this->batchCount = 0;
$this->tableData = true;
$this->lastTable = $attrs['name'];
break;
case "row":
$this->row = array();
break;
case "options":
if (isset( $attrs['Auto_increment'] )) {
$this->setSeqValue( $attrs );
}
break;
}
}
private function end( $parser, $name )
{
switch ($name) {
case "table_structure":
if ($this->exportStructure) {
fwrite( $this->oFh, "\nDROP TABLE IF EXISTS \"{$this->tableFields['name']}\";\n" );
if (array_key_exists( "types", $this->tableFields )) {
foreach ($this->tableFields["types"] as $customTypeName => $customType) {
fwrite( $this->oFh, "DROP TYPE IF EXISTS \"" . trim($customTypeName,"\"") . "\";\n" );
fwrite( $this->oFh, "CREATE TYPE " . str_replace('""','"',$customType) . ";\n" );
}
}
fwrite( $this->oFh, "\nCREATE TABLE \"{$this->tableFields['name']}\" (\n" );
fwrite( $this->oFh, "\t" );
fwrite( $this->oFh, join( ",\n\t", $this->tableFields["fields"] ) );
if ( ! empty( $this->tableFields["primary"] )) {
fwrite(
$this->oFh,
",\n\t" . 'PRIMARY KEY ("' . join( '","', $this->tableFields["primary"] ) . '")' . "\n"
);
}
fwrite( $this->oFh, "\n);\n" );
if (array_key_exists( "key", $this->tableFields )) {
foreach ($this->tableFields["key"] as $keyName => $keyData) {
$indexName = $this->tableFields['name'] . "_" . $keyName;
fwrite(
$this->oFh,
"DROP INDEX IF EXISTS \"{$indexName}\";\n"
);
$fields = $keyData['fields'];
array_walk( $fields, function ( &$item, $key ) {
$item = "\"" . $item . "\"";
} );
fwrite(
$this->oFh,
"CREATE " . ( $keyData["uniq"] ? "UNIQUE " : "" ) . "INDEX \"" . $indexName . "\" ON \"{$this->tableFields['name']}\" (" . join(
",",
$fields
) . ");\n"
);
}
}
if ($this->seq) {
fwrite( $this->oFh, $this->seq );
$this->seq = false;
}
}
break;
case "table_data":
$this->tableData = false;
fwrite(
$this->oFh,
";\n"
);
$this->insertRowField = array();
break;
case "row":
array_walk( $this->row, function ( &$item, $key ) {
$item = pg_escape_string( $item );
} );
if (empty( $this->insertRowField ) || ( $this->maxBatchCount == $this->batchCount )) {
if ($this->maxBatchCount == $this->batchCount) {
fwrite(
$this->oFh,
";\n"
);
}
$this->batchCount = 0;
$this->insertRowField = $this->row;
fwrite(
$this->oFh,
"INSERT INTO \"{$this->lastTable}\" (\"" . join(
"\",\"",
array_keys( $this->insertRowField )
) . "\") VALUES \n"
);
} else {
fwrite(
$this->oFh, ",\n"
);
}
foreach ($this->row as $n=>&$v) {
if (( $v == '' ) && ( isset( $this->tableFields['null'] ) ) && ( $this->tableFields['null'][$n] === true )) {
$v = 'NULL';
} else {
$v = "'".$v."'";
}
}
unset($v);
fwrite(
$this->oFh,
"(" . implode(', ', $this->row). ")"
);
$this->batchCount ++;
break;
case "field":
if ($this->tableData) {
$this->fieldOpen = false;
}
break;
}
}
private function data( $parser, $data )
{
if ($this->tableData && $this->fieldOpen) {
if ("0000-00-00 00:00:00" == $data) {
$data = "1971-01-01 00:00:01";
}
$this->row[$this->lastRow] = ((isset($this->row[$this->lastRow])) ? $this->row[$this->lastRow] : '') . $data;
}
}
private function convert_field_data( $attrs )
{
if (isset( $attrs ) && ! empty( $attrs ) && isset( $attrs['Field'] )) {
//Set field name
$fieldStr = '"' . $attrs['Field'] . '"' . " ";
//Set field type
if ($attrs['Extra'] == "auto_increment") {
$fieldStr .= "serial ";
} elseif (substr( $attrs['Type'], 0, 3 ) == "int") {
$fieldStr .= "integer ";
} elseif (substr( $attrs['Type'], 0, 6 ) == "bigint") {
$fieldStr .= "bigint ";
} elseif (substr( $attrs['Type'], 0, 6 ) == "double") {
$fieldStr .= "money ";
} elseif (substr( $attrs['Type'], 0, 7 ) == "tinyint") {
$fieldStr .= "smallint ";
} elseif (substr( $attrs['Type'], 0, 8 ) == "smallint") {
$fieldStr .= "smallint ";
} elseif (substr( $attrs['Type'], 0, 5 ) == "float") {
$fieldStr .= "real ";
} elseif (substr( $attrs['Type'], 0, 7 ) == "decimal") {
$fieldStr .= "decimal ";
} elseif (substr( $attrs['Type'], 0, 4 ) == "blob") {
$fieldStr .= "bytea ";
} elseif (substr( $attrs['Type'], 0, 7 ) == "varchar") {
$fieldStr .= "text ";
} elseif (( $attrs['Type'] == "datetime" ) || ( $attrs['Type'] == "timestamp" )) {
$fieldStr .= "{$this->timestampType} ";
} elseif (( $attrs['Type'] == "mediumtext" ) || ( $attrs['Type'] == "tinytext" ) || ( $attrs['Type'] == "longtext" )
) {
$fieldStr .= "text ";
} elseif (substr( $attrs['Type'], 0, 4 ) == "enum") {
//Create custom type
$dataType = "\"" . $this->tableFields['name'] . "_enum_" . $attrs['Field'] . "\"";
$this->tableFields["types"][$dataType] = "\"" . $dataType . "\" as " . $attrs['Type'];
$fieldStr .= $dataType . " ";
} else {
$fieldStr .= $attrs['Type'] . " ";
}
//Set extra field
$null = true;
if ($attrs['Null'] == "NO") {
$fieldStr .= "NOT NULL ";
$null = false;
}
if (isset($attrs['Default'])) {
if($attrs['Default'] != "") {
//TODO: See more cases!
if(is_numeric($attrs['Default']) || in_array($attrs['Default'], $this->defaultWords)) {
$fieldStr .= " DEFAULT ".$attrs['Default'];
} else {
$fieldStr .= " DEFAULT '".$attrs['Default']."'";
}
}
}
$this->tableFields["fields"][] = $fieldStr;
$this->tableFields["null"][$attrs['Field']] = $null;
if ($attrs['Key'] == "PRI") {
$this->tableFields["primary"][] = $attrs['Field'];
}
}
}
private function convert_key_data( $attrs )
{
if ($attrs['Key_name'] != "PRIMARY") {
if ( ! array_key_exists( "key", $this->tableFields )) {
$this->tableFields["key"] = array();
}
$keyName = $attrs['Key_name'];
if ( ! array_key_exists( $keyName, $this->tableFields["key"] )) {
$this->tableFields["key"][$keyName] = array( "fields" => array(), "uniq" => false );
}
$this->tableFields["key"][$keyName]["fields"][] = $attrs['Column_name'];
if ($attrs['Non_unique'] == 0) {
$this->tableFields["key"][$keyName]["uniq"] = true;
}
}
}
private function setSeqValue( $attrs )
{
if (isset( $attrs['Auto_increment'] )) {
$this->seq = "SELECT setval('\"{$attrs['Name']}_{$this->tableFields["primary"][0]}_seq\"', {$attrs['Auto_increment']}, true);\n";
}
}
}]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 4
version: 2
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-07-21 16:44:12.623
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">42762294</id>
<property name="hibernateVersion">4</property>
<property name="title">MySQL Converter (convert MySQL to Postgres)</property>
<property name="lowerTitle">mysql converter (convert mysql to postgres)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">42795060</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">42827978</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">42827977</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454040</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2016-07-21 16:43:48.238</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-07-21 16:44:12.623</property>
<property name="versionComment" />
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">42762295</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 42762295
Fecha creación: 2016-07-21 16:43:48.238
<property name="body"><p>Readme.md</p><ac:structured-macro ac:macro-id="c5835801-f3a8-4934-8d67-35f5719ce7d7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[mysql2postgresql
================
Converter mysql schema and data to postgresql
Usage
1. Create dump in xml format using command: `mysqldump --xml -u USER_NAME DB_NAME > DUMP_FILE_NAME`
2. Run converter using command: `php converter.php -i DUMP_FILE_NAME -o PSQL_FILE_NAME`
Additional options
* `-b50` - set batch count (used on insert data). By default batch count = 200
* `-n` - non export structure
Restriction
This converter does not support foreign keys, because mysql does not return foreign key in xml dump
Also You must have installed locally php postgresql extension]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>converter.php</p><ac:structured-macro ac:macro-id="e605a09b-959a-4e92-8e43-6e2562f45733" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[<?php
/**
* Created by PhpStorm.
* User: mihailshumilov
* Date: 22.11.13
* Time: 09:30
*/
require( "Converter.class.php" );
$options = getopt( "i:o:b::n", array( "input-file:", "output-file:", "batch-count::" , "no-export-structure") );
$iFilePath = isset( $options["i"] ) ? $options["i"] : $options["input-file"];
$oFilePath = isset( $options["o"] ) ? $options["o"] : $options["output-file"];
$batchCount = isset( $options["b"] ) ? $options["b"] : ( isset( $options["batch-count"] ) ? $options["batch-count"] : false );
$exportStructure = isset( $options["n"] ) ? false : ( isset( $options["no-export-structure"] ) ? false : true );
$conv = new Convertor( array(
"iFileName" => $iFilePath,
"oFileName" => $oFilePath,
"batchCount" => $batchCount,
"exportStructure" => $exportStructure
) );
$conv->run();
exit( 0 );]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>Converter.class.php</p><ac:structured-macro ac:macro-id="b256680b-01a8-48ef-af9f-c0d95b7356ca" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[<?php
/**
* Created by PhpStorm.
* User: mihailshumilov
* Date: 23.02.14
* Time: 16:27
*/
class Convertor
{
private $iFileName;
private $oFileName;
private $exportStructure;
private $iFh;
private $oFh;
private $tableFields = array();
private $row = array();
private $lastTable = null;
private $lastRow = null;
private $tableData = false;
private $fieldOpen = false;
private $timestampType = "timestamp with time zone";
private $seq = false;
private $insertRowField = array();
private $maxBatchCount = 200;
private $batchCount = 0;
private $defaultWords = array(
'CURRENT_TIMESTAMP'
);
public function __construct( $params )
{
if (isset( $params['iFileName'] ) && ! empty( $params['iFileName'] )) {
$this->iFileName = $params['iFileName'];
} else {
throw new Exception( "Input file name not set" );
}
if (isset( $params['oFileName'] ) && ! empty( $params['oFileName'] )) {
$this->oFileName = $params['oFileName'];
} else {
throw new Exception( "Output file name not set" );
}
if (isset( $params['batchCount'] ) && $params['batchCount']) {
if (filter_var( $params['batchCount'], FILTER_VALIDATE_INT )) {
$this->maxBatchCount = $params['batchCount'];
} else {
throw new Exception( "Parameter `batchCount` must be positive integer" );
}
}
if (isset( $params['exportStructure'] )) {
$this->exportStructure = $params['exportStructure'];
} else {
throw new Exception( "Export database structure not set" );
}
$this->checkFiles();
}
private function checkFiles()
{
if (!file_exists( $this->iFileName )) {
throw new RuntimeException( "File `{$this->iFileName}` does not exists" );
}
if (!$this->iFh = @fopen( $this->iFileName, "r" )) {
throw new RuntimeException( "Can't open `{$this->iFileName}`" );
}
if (!$this->oFh = @fopen( $this->oFileName, "w+" )) {
throw new RuntimeException( "Can't open `{$this->oFileName}` to write" );
}
}
public function __destruct()
{
fclose( $this->iFh );
fclose( $this->oFh );
}
public function run()
{
$xml = xml_parser_create();
xml_set_element_handler( $xml, array( &$this, "start" ), array( &$this, "end" ) );
xml_set_character_data_handler( $xml, array( &$this, "data" ) );
xml_parser_set_option( $xml, XML_OPTION_CASE_FOLDING, false );
$totalFileSize = filesize( $this->iFileName );
$processed = 0;
echo "\nProcess:0%\r";
while ($data = fread( $this->iFh, 4096 )) {
xml_parse( $xml, $data, feof( $this->iFh ) ) or die( "Can't parse XML data" );
$processed += 4096;
$percentage = round( $processed / $totalFileSize * 100, 2 );
echo "Processed: {$percentage}%\r";
}
xml_parser_free( $xml );
echo "\r";
echo "Processed: 100%\n";
}
private function start( $parser, $name, $attrs )
{
switch ($name) {
case "table_structure":
$this->tableFields = array();
$this->tableFields['name'] = $attrs['name'];
break;
case "field":
if ($this->tableData) {
$this->row[$attrs['name']] = null;
$this->lastRow = $attrs['name'];
$this->fieldOpen = true;
} else {
$this->convert_field_data( $attrs );
}
break;
case "key":
$this->convert_key_data( $attrs );
break;
case "table_data":
$this->batchCount = 0;
$this->tableData = true;
$this->lastTable = $attrs['name'];
break;
case "row":
$this->row = array();
break;
case "options":
if (isset( $attrs['Auto_increment'] )) {
$this->setSeqValue( $attrs );
}
break;
}
}
private function end( $parser, $name )
{
switch ($name) {
case "table_structure":
if ($this->exportStructure) {
fwrite( $this->oFh, "\nDROP TABLE IF EXISTS \"{$this->tableFields['name']}\";\n" );
if (array_key_exists( "types", $this->tableFields )) {
foreach ($this->tableFields["types"] as $customTypeName => $customType) {
fwrite( $this->oFh, "DROP TYPE IF EXISTS \"" . trim($customTypeName,"\"") . "\";\n" );
fwrite( $this->oFh, "CREATE TYPE " . str_replace('""','"',$customType) . ";\n" );
}
}
fwrite( $this->oFh, "\nCREATE TABLE \"{$this->tableFields['name']}\" (\n" );
fwrite( $this->oFh, "\t" );
fwrite( $this->oFh, join( ",\n\t", $this->tableFields["fields"] ) );
if ( ! empty( $this->tableFields["primary"] )) {
fwrite(
$this->oFh,
",\n\t" . 'PRIMARY KEY ("' . join( '","', $this->tableFields["primary"] ) . '")' . "\n"
);
}
fwrite( $this->oFh, "\n);\n" );
if (array_key_exists( "key", $this->tableFields )) {
foreach ($this->tableFields["key"] as $keyName => $keyData) {
$indexName = $this->tableFields['name'] . "_" . $keyName;
fwrite(
$this->oFh,
"DROP INDEX IF EXISTS \"{$indexName}\";\n"
);
$fields = $keyData['fields'];
array_walk( $fields, function ( &$item, $key ) {
$item = "\"" . $item . "\"";
} );
fwrite(
$this->oFh,
"CREATE " . ( $keyData["uniq"] ? "UNIQUE " : "" ) . "INDEX \"" . $indexName . "\" ON \"{$this->tableFields['name']}\" (" . join(
",",
$fields
) . ");\n"
);
}
}
if ($this->seq) {
fwrite( $this->oFh, $this->seq );
$this->seq = false;
}
}
break;
case "table_data":
$this->tableData = false;
fwrite(
$this->oFh,
";\n"
);
$this->insertRowField = array();
break;
case "row":
array_walk( $this->row, function ( &$item, $key ) {
$item = pg_escape_string( $item );
} );
if (empty( $this->insertRowField ) || ( $this->maxBatchCount == $this->batchCount )) {
if ($this->maxBatchCount == $this->batchCount) {
fwrite(
$this->oFh,
";\n"
);
}
$this->batchCount = 0;
$this->insertRowField = $this->row;
fwrite(
$this->oFh,
"INSERT INTO \"{$this->lastTable}\" (\"" . join(
"\",\"",
array_keys( $this->insertRowField )
) . "\") VALUES \n"
);
} else {
fwrite(
$this->oFh, ",\n"
);
}
foreach ($this->row as $n=>&$v) {
if (( $v == '' ) && ( isset( $this->tableFields['null'] ) ) && ( $this->tableFields['null'][$n] === true )) {
$v = 'NULL';
} else {
$v = "'".$v."'";
}
}
unset($v);
fwrite(
$this->oFh,
"(" . implode(', ', $this->row). ")"
);
$this->batchCount ++;
break;
case "field":
if ($this->tableData) {
$this->fieldOpen = false;
}
break;
}
}
private function data( $parser, $data )
{
if ($this->tableData && $this->fieldOpen) {
if ("0000-00-00 00:00:00" == $data) {
$data = "1971-01-01 00:00:01";
}
$this->row[$this->lastRow] = ((isset($this->row[$this->lastRow])) ? $this->row[$this->lastRow] : '') . $data;
}
}
private function convert_field_data( $attrs )
{
if (isset( $attrs ) && ! empty( $attrs ) && isset( $attrs['Field'] )) {
//Set field name
$fieldStr = '"' . $attrs['Field'] . '"' . " ";
//Set field type
if ($attrs['Extra'] == "auto_increment") {
$fieldStr .= "serial ";
} elseif (substr( $attrs['Type'], 0, 3 ) == "int") {
$fieldStr .= "integer ";
} elseif (substr( $attrs['Type'], 0, 6 ) == "bigint") {
$fieldStr .= "bigint ";
} elseif (substr( $attrs['Type'], 0, 6 ) == "double") {
$fieldStr .= "money ";
} elseif (substr( $attrs['Type'], 0, 7 ) == "tinyint") {
$fieldStr .= "smallint ";
} elseif (substr( $attrs['Type'], 0, 8 ) == "smallint") {
$fieldStr .= "smallint ";
} elseif (substr( $attrs['Type'], 0, 5 ) == "float") {
$fieldStr .= "real ";
} elseif (substr( $attrs['Type'], 0, 7 ) == "decimal") {
$fieldStr .= "decimal ";
} elseif (substr( $attrs['Type'], 0, 4 ) == "blob") {
$fieldStr .= "bytea ";
} elseif (substr( $attrs['Type'], 0, 7 ) == "varchar") {
$fieldStr .= "text ";
} elseif (( $attrs['Type'] == "datetime" ) || ( $attrs['Type'] == "timestamp" )) {
$fieldStr .= "{$this->timestampType} ";
} elseif (( $attrs['Type'] == "mediumtext" ) || ( $attrs['Type'] == "tinytext" ) || ( $attrs['Type'] == "longtext" )
) {
$fieldStr .= "text ";
} elseif (substr( $attrs['Type'], 0, 4 ) == "enum") {
//Create custom type
$dataType = "\"" . $this->tableFields['name'] . "_enum_" . $attrs['Field'] . "\"";
$this->tableFields["types"][$dataType] = "\"" . $dataType . "\" as " . $attrs['Type'];
$fieldStr .= $dataType . " ";
} else {
$fieldStr .= $attrs['Type'] . " ";
}
//Set extra field
$null = true;
if ($attrs['Null'] == "NO") {
$fieldStr .= "NOT NULL ";
$null = false;
}
if (isset($attrs['Default'])) {
if($attrs['Default'] != "") {
//TODO: See more cases!
if(is_numeric($attrs['Default']) || in_array($attrs['Default'], $this->defaultWords)) {
$fieldStr .= " DEFAULT ".$attrs['Default'];
} else {
$fieldStr .= " DEFAULT '".$attrs['Default']."'";
}
}
}
$this->tableFields["fields"][] = $fieldStr;
$this->tableFields["null"][$attrs['Field']] = $null;
if ($attrs['Key'] == "PRI") {
$this->tableFields["primary"][] = $attrs['Field'];
}
}
}
private function convert_key_data( $attrs )
{
if ($attrs['Key_name'] != "PRIMARY") {
if ( ! array_key_exists( "key", $this->tableFields )) {
$this->tableFields["key"] = array();
}
$keyName = $attrs['Key_name'];
if ( ! array_key_exists( $keyName, $this->tableFields["key"] )) {
$this->tableFields["key"][$keyName] = array( "fields" => array(), "uniq" => false );
}
$this->tableFields["key"][$keyName]["fields"][] = $attrs['Column_name'];
if ($attrs['Non_unique'] == 0) {
$this->tableFields["key"][$keyName]["uniq"] = true;
}
}
}
private function setSeqValue( $attrs )
{
if (isset( $attrs['Auto_increment'] )) {
$this->seq = "SELECT setval('\"{$attrs['Name']}_{$this->tableFields["primary"][0]}_seq\"', {$attrs['Auto_increment']}, true);\n";
}
}
}]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 2
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-07-21 16:43:48.238
originalVersion: 42762294
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">42762295</id>
<property name="hibernateVersion">2</property>
<property name="title">MySQL Converter (convert MySQL to Postgres)</property>
<property name="lowerTitle">mysql converter (convert mysql to postgres)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">42795061</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">42827976</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">42827975</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2016-07-21 16:43:48.238</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-07-21 16:43:48.238</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">42762294</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 43319324
Fecha creación: 2016-10-18 14:33:14.646
<property name="body"><h2>Root CA Server</h2><p>The root certificate signing server can only be accessed by Parker, Josh, and Jim. This is the server that has the root public and private key. The private key must never leave this server in any way.</p><p>The public key from this server is distributed to all of our other Linux hosts. See Initial Server Set Up below.</p><h2>Initial Server Set Up</h2><p>The following code will put the root public certificate in /etc/ssh, modify the sshd_config file to trust the root certificate and set up the auth_principals with only the root user allowed from the root-everywhere zone.</p><ac:structured-macro ac:macro-id="a0e2c96e-44bf-4c74-b9bc-01586afdc3ad" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCa2c4+YpuoGIYqocngRI9PinUTQB3ZXeEZxrg8kpU+7UyE75YxY1hp279tlCiuUzJIwBw3Czlmvzy8QDhE8bf2fJZZLu8CkaeKDEIsoZ50fM76FrO0Qksx4ytfk7UPhhg/oIyqGU2q/GedjJXoOsdIziHrdtLUobz0fjkIfI3NlpLzmaNoSVseAObHtRkuNSWNLR9OYmawQN83YHKovP6AHbzvcXLhcq8BmX11npQfhN7Xm2/+pGuH2kIbGuoFz7z3pWmyYaNUjJGcRRVm9nPFczXWtXVNk9/vCjPrOk2A9PRg6oj1oGvhjDRk70g1MzLu42Rqht7qksZzX3KPgMPb7Bnl8EnDww1GFILiX7hTEcug9/hW/ElZwduIkwpMHODDAx9ui1NpGHd5phU4DV29Bj4tXSZM9OI6zzK1tvCfdH8DQmVPRB3huDC3U85Sd3X3dJcZlfKaroJ46R/zeWyATBuxiffcpkd16FKz+s5tFVz4l34N3Kxh/oVlndpv0l2lQdZH19AfhNP6Lrfl2PBspdDSnQgStLaQPAjLnhgEfP4n6pY1GaDPHTyyjJXOXkKsBw/SKM0moQADosvb4uq9kTy3R7bZXDTaJKkfHfYlADQi4SN7c0fMmfitC4LlwFPZ7TwzcPPMHpi+dq2Z2O22cZ5ImjkRB7htsF0LsIJwSQ== SUUCA" > /etc/ssh/suuca.pub
chmod 0644 /etc/ssh/suuca.pub
echo "TrustedUserCAKeys /etc/ssh/suuca.pub" >> /etc/ssh/sshd_config
echo "PermitRootLogin without-password" >> /etc/ssh/sshd_config
echo "AuthorizedPrincipalsFile /etc/ssh/auth_principals/%u" >> /etc/ssh/sshd_config
mkdir /etc/ssh/auth_principals
echo "root-everywhere" >> /etc/ssh/auth_principals/root
service ssh restart]] ></ac:plain-text-body></ac:structured-macro><h2>Signing a Certificate</h2><p>Steps to sign a certificate:</p><ol><li>Have the user generate a public/private ssh key-pair on pal.</li><li>Copy their public key to the root key signing server and place it in `/home/suuca/my-ca/user-requests`</li><li>Sign the ssh key with the command below.</li><li>Copy the contents of the resulting username_id_rsa-cert.pub.</li><li>Place the copied sign cert contents to pal in /home/username/.ssh/id_rsa-cert.pub<br />NOTE: the name of the cert file must match the naming convention of their public/private key pair.&nbsp;</li></ol><p>&nbsp;</p><p>This is a TextExpander snippet that prompts for a username, the zones this user is allowed to access, and a serial number for the certificate.</p><ac:structured-macro ac:macro-id="3d77b327-7eab-4c15-988c-7e7d065244f3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -s ../suuca -I %filltext:name=username% -n %filltext:name=zones% -z %filltext:name=serial_number% %filltext:name=username%_id_rsa.pub;cat %filltext:name=username%_id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><h2>Verifying a Signed Certificate</h2><p>This can be done on the root signing host, or on pal. The output will show the username, serial number, and the authorized principals (zones).</p><ac:structured-macro ac:macro-id="08fdd4fb-a81e-430f-8b16-9e6b9af91fd2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -Lf .ssh/id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>The output will look something like this:</p><ac:structured-macro ac:macro-id="96235f49-3f7d-4d6c-9d80-4004418aa4e4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -Lf .ssh/id_rsa-cert.pub
.ssh/id_rsa-cert.pub:
Type: ssh-rsa-cert-v01@openssh.com user certificate
Public key: RSA-CERT 28:3e:4a:b2:db:d4:f1:64:59:00:cd:14:f4:2a:e5:98
Signing CA: RSA ca:bb:7a:1b:72:75:48:20:f4:b3:91:cc:e2:8d:60:84
Key ID: "grimesp"
Serial: 2
Valid: forever
Principals:
root-everywhere
zone-dba
zone-portal
zone-jobsub
zone-docker
Critical Options: (none)
Extensions:
permit-X11-forwarding
permit-agent-forwarding
permit-port-forwarding
permit-pty
permit-user-rc
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 13
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2017-01-02 22:19:49.232
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319324</id>
<property name="hibernateVersion">13</property>
<property name="title">SSH Signed Certificates</property>
<property name="lowerTitle">ssh signed certificates</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">43384856</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">67862567</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454031</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">44728388</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">44728389</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2016-10-18 14:33:14.646</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2017-01-02 22:19:49.232</property>
<property name="versionComment" />
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">44662822</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319330</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 43319326
Fecha creación: 2016-10-18 15:00:19.416
<property name="body"><h2>Verify your signed certificate</h2><ac:structured-macro ac:macro-id="c8453d56-b326-4d81-ac5f-a430f89aa59f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh pal
ssh-keygen -Lf .ssh/id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><p>The above command will show you which zones you are allowed to access.</p><h2>Laptop .ssh/config set up</h2><p>For each host that you want to ssh to, make sure you have an entry in your .ssh/config file that looks like the following:</p><ac:structured-macro ac:macro-id="bc74e489-b9ec-4f5c-bfc9-f33c7a54d43c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[Host awsjobsub1
Hostname 10.1.5.31
ProxyCommand ssh -o 'ForwardAgent yes' pal 'ssh-add && nc %h %p']] ></ac:plain-text-body></ac:structured-macro><p>You can then ssh like this:</p><ac:structured-macro ac:macro-id="529a1ca5-49ac-4533-8f43-b155aa54c4e7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh root@awsjobsub1
scp files root@awsjobsub1:]] ></ac:plain-text-body></ac:structured-macro><p>You will be tunneling through pal, your laptop ssh key will allow you to get to pal, your signed certificate on pal will allow you to get to the final destination server.</p><h2>Zones</h2><p>Your signed ssh certificate grants you access to zones. Zones determine which server you are allowed to authenticate to and which user you are allowed to authenticate as.</p><ul><li><strong>zone-dba</strong><ul><li>root</li><li>oracle</li><li>orawork</li></ul></li><li><strong>zone-portal</strong><ul><li>root</li><li>mysuuadmin</li></ul></li><li><strong>zone-docker</strong><ul><li>bannerxe</li></ul></li><li><strong>zone-jobsub</strong><ul><li>banner</li><li>banjobs</li></ul></li><li><strong>root-everywhere</strong><ul><li>root</li></ul></li></ul><p>Each server is put in one or more of the above zones. If the server is in the zone, you can ssh as the users listed under the zones&nbsp;</p><h2>If you are still having trouble:</h2><ac:structured-macro ac:macro-id="c15c2d41-156d-4723-89bb-ab706739759c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh -v[vvv] user@host
This will show debugging info - the more 'v's (up to 4) you add, the more debug info comes back]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 6
version: 4
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-10-19 18:10:03.535
contentStatus: deleted
space: 3014657
Colección: contentProperties
Colección: historicalVersions
Colección: comments
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319326</id>
<property name="hibernateVersion">6</property>
<property name="title">SSH Signed Certificate End-User Notes</property>
<property name="lowerTitle">ssh signed certificate end-user notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">43384858</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352118</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352117</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454029</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2016-10-18 15:00:19.416</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-10-19 18:10:03.535</property>
<property name="versionComment" />
<collection name="historicalVersions" class="java.util.Collection">
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319328</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319329</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319332</id>
</element>
</collection>
<property name="contentStatus">deleted</property>
<collection name="comments" class="java.util.Set">
<element class="Comment" package="com.atlassian.confluence.pages">
<id name="id">43319354</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 43319328
Fecha creación: 2016-10-18 15:00:19.416
<property name="body"><h2>Verify your signed certificate</h2><ac:structured-macro ac:macro-id="c8453d56-b326-4d81-ac5f-a430f89aa59f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh pal
ssh-keygen -Lf .ssh/id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><p>The above command will show you which zones you are allowed to access.</p><h2>Laptop .ssh/config set up</h2><p>For each host that you want to ssh to, make sure you have an entry in your .ssh/config file that looks like the following:</p><ac:structured-macro ac:macro-id="bc74e489-b9ec-4f5c-bfc9-f33c7a54d43c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[Host awsjobsub1
Hostname 10.1.5.31
ProxyCommand ssh -o 'ForwardAgent yes' pal 'ssh-add && nc %h %p']] ></ac:plain-text-body></ac:structured-macro><p>You can then ssh like this:</p><ac:structured-macro ac:macro-id="529a1ca5-49ac-4533-8f43-b155aa54c4e7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh root@awsjobsub1
scp files root@awsjobsub1:]] ></ac:plain-text-body></ac:structured-macro><p>You will be tunneling through pal, your laptop ssh key will allow you to get to pal, your signed certificate on pal will allow you to get to the final destination server.</p><h2>Zones</h2><p>Your signed ssh certificate grants you access to zones. Zones determine which server you are allowed to authenticate to and which user you are allowed to authenticate as.</p><ul><li>zone-dba<ul><li>root</li><li>oracle</li><li>orawork</li></ul></li><li>zone-portal<ul><li>root</li><li>mysuuadmin</li></ul></li><li>zone-docker<ul><li>bannerxe</li></ul></li><li>root-everywhere<ul><li>root</li></ul></li></ul><p>Each server is put in one or more of the above zones. If the server is in the zone, you can ssh as the users listed under the zones&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 4
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2016-10-18 15:00:19.416
originalVersion: 43319326
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319328</id>
<property name="hibernateVersion">4</property>
<property name="title">SSH Signed Certificate End-User Notes</property>
<property name="lowerTitle">ssh signed certificate end-user notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">43384860</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352104</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352103</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2016-10-18 15:00:19.416</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2016-10-18 15:00:19.416</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319326</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 43319329
Fecha creación: 2016-10-18 15:00:19.416
<property name="body"><h2>Verify your signed certificate</h2><ac:structured-macro ac:macro-id="c8453d56-b326-4d81-ac5f-a430f89aa59f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh pal
ssh-keygen -Lf .ssh/id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><p>The above command will show you which zones you are allowed to access.</p><h2>Laptop .ssh/config set up</h2><p>For each host that you want to ssh to, make sure you have an entry in your .ssh/config file that looks like the following:</p><ac:structured-macro ac:macro-id="bc74e489-b9ec-4f5c-bfc9-f33c7a54d43c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[Host awsjobsub1
Hostname 10.1.5.31
ProxyCommand ssh -o 'ForwardAgent yes' pal 'ssh-add && nc %h %p']] ></ac:plain-text-body></ac:structured-macro><p>You can then ssh like this:</p><ac:structured-macro ac:macro-id="529a1ca5-49ac-4533-8f43-b155aa54c4e7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh root@awsjobsub1
scp files root@awsjobsub1:]] ></ac:plain-text-body></ac:structured-macro><p>You will be tunneling through pal, your laptop ssh key will allow you to get to pal, your signed certificate on pal will allow you to get to the final destination server.</p><h2>Zones</h2><p>Your signed ssh certificate grants you access to zones. Zones determine which server you are allowed to authenticate to and which user you are allowed to authenticate as.</p><ul><li><strong>zone-dba</strong><ul><li>root</li><li>oracle</li><li>orawork</li></ul></li><li><strong>zone-portal</strong><ul><li>root</li><li>mysuuadmin</li></ul></li><li><strong>zone-docker</strong><ul><li>bannerxe</li></ul></li><li><strong>zone-</strong>jobsub<ul><li>banner</li><li>banjobs</li></ul></li><li><strong>root-everywhere</strong><ul><li>root</li></ul></li></ul><p>Each server is put in one or more of the above zones. If the server is in the zone, you can ssh as the users listed under the zones&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 4
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2016-10-18 15:01:31.053
originalVersion: 43319326
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319329</id>
<property name="hibernateVersion">4</property>
<property name="title">SSH Signed Certificate End-User Notes</property>
<property name="lowerTitle">ssh signed certificate end-user notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">43384861</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352108</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352107</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2016-10-18 15:00:19.416</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2016-10-18 15:01:31.053</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319326</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 43319330
Fecha creación: 2016-10-18 14:33:14.646
<property name="body"><h2>Root CA Server</h2><p>The root certificate signing server can only be accessed by Parker, Josh, and Jim. This is the server that has the root public and private key. The private key must never leave this server in any way.</p><p>The public key from this server is distributed to all of our other Linux hosts. See Initial Server Set Up below.</p><h2>Initial Server Set Up</h2><p>The following code will put the root public certificate in /etc/ssh, modify the sshd_config file to trust the root certificate and set up the auth_principals with only the root user allowed from the root-everywhere zone.</p><ac:structured-macro ac:macro-id="a0e2c96e-44bf-4c74-b9bc-01586afdc3ad" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCa2c4+YpuoGIYqocngRI9PinUTQB3ZXeEZxrg8kpU+7UyE75YxY1hp279tlCiuUzJIwBw3Czlmvzy8QDhE8bf2fJZZLu8CkaeKDEIsoZ50fM76FrO0Qksx4ytfk7UPhhg/oIyqGU2q/GedjJXoOsdIziHrdtLUobz0fjkIfI3NlpLzmaNoSVseAObHtRkuNSWNLR9OYmawQN83YHKovP6AHbzvcXLhcq8BmX11npQfhN7Xm2/+pGuH2kIbGuoFz7z3pWmyYaNUjJGcRRVm9nPFczXWtXVNk9/vCjPrOk2A9PRg6oj1oGvhjDRk70g1MzLu42Rqht7qksZzX3KPgMPb7Bnl8EnDww1GFILiX7hTEcug9/hW/ElZwduIkwpMHODDAx9ui1NpGHd5phU4DV29Bj4tXSZM9OI6zzK1tvCfdH8DQmVPRB3huDC3U85Sd3X3dJcZlfKaroJ46R/zeWyATBuxiffcpkd16FKz+s5tFVz4l34N3Kxh/oVlndpv0l2lQdZH19AfhNP6Lrfl2PBspdDSnQgStLaQPAjLnhgEfP4n6pY1GaDPHTyyjJXOXkKsBw/SKM0moQADosvb4uq9kTy3R7bZXDTaJKkfHfYlADQi4SN7c0fMmfitC4LlwFPZ7TwzcPPMHpi+dq2Z2O22cZ5ImjkRB7htsF0LsIJwSQ== SUUCA" > /etc/ssh/suuca.pub
echo "TrustedUserCAKeys /etc/ssh/suuca.pub" >> /etc/ssh/sshd_config
echo "AuthorizedPrincipalsFile /etc/ssh/auth_principals/%u" >> /etc/ssh/sshd_config
mkdir /etc/ssh/auth_principals
echo "root-everywhere" >> /etc/ssh/auth_principals/root
service ssh restart]] ></ac:plain-text-body></ac:structured-macro><h2>Signing a Certificate</h2><p>Steps to sign a certificate:</p><ol><li>Have the user generate a public/private ssh key-pair on pal.</li><li>Copy their public key to the root key signing server and place it in `/home/suuca/my-ca/user-requests`</li><li>Sign the ssh key with the command below.</li><li>Copy the contents of the resulting username_id_rsa-cert.pub.</li><li>Place the copied sign cert contents to pal in /home/username/.ssh/id_rsa-cert.pub<br />NOTE: the name of the cert file must match the naming convention of their public/private key pair.&nbsp;</li></ol><p>&nbsp;</p><p>This is a TextExpander snippet that prompts for a username, the zones this user is allowed to access, and a serial number for the certificate.</p><ac:structured-macro ac:macro-id="3d77b327-7eab-4c15-988c-7e7d065244f3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -s ../suuca -I %filltext:name=username% -n %filltext:name=zones% -z %filltext:name=serial_number% %filltext:name=username%_id_rsa.pub;cat %filltext:name=username%_id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><h2>Verifying a Signed Certificate</h2><p>This can be done on the root signing host, or on pal. The output will show the username, serial number, and the authorized principals (zones).</p><ac:structured-macro ac:macro-id="08fdd4fb-a81e-430f-8b16-9e6b9af91fd2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -Lf .ssh/id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>The output will look something like this:</p><ac:structured-macro ac:macro-id="96235f49-3f7d-4d6c-9d80-4004418aa4e4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -Lf .ssh/id_rsa-cert.pub
.ssh/id_rsa-cert.pub:
Type: ssh-rsa-cert-v01@openssh.com user certificate
Public key: RSA-CERT 28:3e:4a:b2:db:d4:f1:64:59:00:cd:14:f4:2a:e5:98
Signing CA: RSA ca:bb:7a:1b:72:75:48:20:f4:b3:91:cc:e2:8d:60:84
Key ID: "grimesp"
Serial: 2
Valid: forever
Principals:
root-everywhere
zone-dba
zone-portal
zone-jobsub
zone-docker
Critical Options: (none)
Extensions:
permit-X11-forwarding
permit-agent-forwarding
permit-port-forwarding
permit-pty
permit-user-rc
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 5
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2016-10-18 14:33:14.646
originalVersion: 43319324
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319330</id>
<property name="hibernateVersion">5</property>
<property name="title">SSH Signed Certificates</property>
<property name="lowerTitle">ssh signed certificates</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">43384862</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352112</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352111</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2016-10-18 14:33:14.646</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2016-10-18 14:33:14.646</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319324</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 43319332
Fecha creación: 2016-10-18 15:00:19.416
<property name="body"><h2>Verify your signed certificate</h2><ac:structured-macro ac:macro-id="c8453d56-b326-4d81-ac5f-a430f89aa59f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh pal
ssh-keygen -Lf .ssh/id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><p>The above command will show you which zones you are allowed to access.</p><h2>Laptop .ssh/config set up</h2><p>For each host that you want to ssh to, make sure you have an entry in your .ssh/config file that looks like the following:</p><ac:structured-macro ac:macro-id="bc74e489-b9ec-4f5c-bfc9-f33c7a54d43c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[Host awsjobsub1
Hostname 10.1.5.31
ProxyCommand ssh -o 'ForwardAgent yes' pal 'ssh-add && nc %h %p']] ></ac:plain-text-body></ac:structured-macro><p>You can then ssh like this:</p><ac:structured-macro ac:macro-id="529a1ca5-49ac-4533-8f43-b155aa54c4e7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh root@awsjobsub1
scp files root@awsjobsub1:]] ></ac:plain-text-body></ac:structured-macro><p>You will be tunneling through pal, your laptop ssh key will allow you to get to pal, your signed certificate on pal will allow you to get to the final destination server.</p><h2>Zones</h2><p>Your signed ssh certificate grants you access to zones. Zones determine which server you are allowed to authenticate to and which user you are allowed to authenticate as.</p><ul><li><strong>zone-dba</strong><ul><li>root</li><li>oracle</li><li>orawork</li></ul></li><li><strong>zone-portal</strong><ul><li>root</li><li>mysuuadmin</li></ul></li><li><strong>zone-docker</strong><ul><li>bannerxe</li></ul></li><li><strong>zone-jobsub</strong><ul><li>banner</li><li>banjobs</li></ul></li><li><strong>root-everywhere</strong><ul><li>root</li></ul></li></ul><p>Each server is put in one or more of the above zones. If the server is in the zone, you can ssh as the users listed under the zones&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 4
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-10-18 16:02:11.158
originalVersion: 43319326
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319332</id>
<property name="hibernateVersion">4</property>
<property name="title">SSH Signed Certificate End-User Notes</property>
<property name="lowerTitle">ssh signed certificate end-user notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">43384864</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352116</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">43352115</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2016-10-18 15:00:19.416</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-10-18 16:02:11.158</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319326</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 44662822
Fecha creación: 2016-10-18 14:33:14.646
<property name="body"><h2>Root CA Server</h2><p>The root certificate signing server can only be accessed by Parker, Josh, and Jim. This is the server that has the root public and private key. The private key must never leave this server in any way.</p><p>The public key from this server is distributed to all of our other Linux hosts. See Initial Server Set Up below.</p><h2>Initial Server Set Up</h2><p>The following code will put the root public certificate in /etc/ssh, modify the sshd_config file to trust the root certificate and set up the auth_principals with only the root user allowed from the root-everywhere zone.</p><ac:structured-macro ac:macro-id="a0e2c96e-44bf-4c74-b9bc-01586afdc3ad" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCa2c4+YpuoGIYqocngRI9PinUTQB3ZXeEZxrg8kpU+7UyE75YxY1hp279tlCiuUzJIwBw3Czlmvzy8QDhE8bf2fJZZLu8CkaeKDEIsoZ50fM76FrO0Qksx4ytfk7UPhhg/oIyqGU2q/GedjJXoOsdIziHrdtLUobz0fjkIfI3NlpLzmaNoSVseAObHtRkuNSWNLR9OYmawQN83YHKovP6AHbzvcXLhcq8BmX11npQfhN7Xm2/+pGuH2kIbGuoFz7z3pWmyYaNUjJGcRRVm9nPFczXWtXVNk9/vCjPrOk2A9PRg6oj1oGvhjDRk70g1MzLu42Rqht7qksZzX3KPgMPb7Bnl8EnDww1GFILiX7hTEcug9/hW/ElZwduIkwpMHODDAx9ui1NpGHd5phU4DV29Bj4tXSZM9OI6zzK1tvCfdH8DQmVPRB3huDC3U85Sd3X3dJcZlfKaroJ46R/zeWyATBuxiffcpkd16FKz+s5tFVz4l34N3Kxh/oVlndpv0l2lQdZH19AfhNP6Lrfl2PBspdDSnQgStLaQPAjLnhgEfP4n6pY1GaDPHTyyjJXOXkKsBw/SKM0moQADosvb4uq9kTy3R7bZXDTaJKkfHfYlADQi4SN7c0fMmfitC4LlwFPZ7TwzcPPMHpi+dq2Z2O22cZ5ImjkRB7htsF0LsIJwSQ== SUUCA" > /etc/ssh/suuca.pub
chmod 0644 /etc/ssh/suuca.pub
echo "TrustedUserCAKeys /etc/ssh/suuca.pub" >> /etc/ssh/sshd_config
echo "AuthorizedPrincipalsFile /etc/ssh/auth_principals/%u" >> /etc/ssh/sshd_config
mkdir /etc/ssh/auth_principals
echo "root-everywhere" >> /etc/ssh/auth_principals/root
service ssh restart]] ></ac:plain-text-body></ac:structured-macro><h2>Signing a Certificate</h2><p>Steps to sign a certificate:</p><ol><li>Have the user generate a public/private ssh key-pair on pal.</li><li>Copy their public key to the root key signing server and place it in `/home/suuca/my-ca/user-requests`</li><li>Sign the ssh key with the command below.</li><li>Copy the contents of the resulting username_id_rsa-cert.pub.</li><li>Place the copied sign cert contents to pal in /home/username/.ssh/id_rsa-cert.pub<br />NOTE: the name of the cert file must match the naming convention of their public/private key pair.&nbsp;</li></ol><p>&nbsp;</p><p>This is a TextExpander snippet that prompts for a username, the zones this user is allowed to access, and a serial number for the certificate.</p><ac:structured-macro ac:macro-id="3d77b327-7eab-4c15-988c-7e7d065244f3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -s ../suuca -I %filltext:name=username% -n %filltext:name=zones% -z %filltext:name=serial_number% %filltext:name=username%_id_rsa.pub;cat %filltext:name=username%_id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><h2>Verifying a Signed Certificate</h2><p>This can be done on the root signing host, or on pal. The output will show the username, serial number, and the authorized principals (zones).</p><ac:structured-macro ac:macro-id="08fdd4fb-a81e-430f-8b16-9e6b9af91fd2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -Lf .ssh/id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>The output will look something like this:</p><ac:structured-macro ac:macro-id="96235f49-3f7d-4d6c-9d80-4004418aa4e4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -Lf .ssh/id_rsa-cert.pub
.ssh/id_rsa-cert.pub:
Type: ssh-rsa-cert-v01@openssh.com user certificate
Public key: RSA-CERT 28:3e:4a:b2:db:d4:f1:64:59:00:cd:14:f4:2a:e5:98
Signing CA: RSA ca:bb:7a:1b:72:75:48:20:f4:b3:91:cc:e2:8d:60:84
Key ID: "grimesp"
Serial: 2
Valid: forever
Principals:
root-everywhere
zone-dba
zone-portal
zone-jobsub
zone-docker
Critical Options: (none)
Extensions:
permit-X11-forwarding
permit-agent-forwarding
permit-port-forwarding
permit-pty
permit-user-rc
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 2
version: 2
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2016-10-18 17:33:26.702
originalVersion: 43319324
contentStatus: current
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">44662822</id>
<property name="hibernateVersion">2</property>
<property name="title">SSH Signed Certificates</property>
<property name="lowerTitle">ssh signed certificates</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">44695587</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">44728386</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">44728387</id>
</element>
</collection>
<property name="version">2</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2016-10-18 14:33:14.646</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2016-10-18 17:33:26.702</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319324</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 55607304
<property name="body"><h2>Root CA Server</h2><p>The root certificate signing server can only be accessed by Parker, Josh, and Jim. This is the server that has the root public and private key. The private key must never leave this server in any way.</p><p>The public key from this server is distributed to all of our other Linux hosts. See Initial Server Set Up below.</p><h2>Initial Server Set Up</h2><p>The following code will put the root public certificate in /etc/ssh, modify the sshd_config file to trust the root certificate and set up the auth_principals with only the root user allowed from the root-everywhere zone.</p><ac:structured-macro ac:macro-id="a0e2c96e-44bf-4c74-b9bc-01586afdc3ad" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCa2c4+YpuoGIYqocngRI9PinUTQB3ZXeEZxrg8kpU+7UyE75YxY1hp279tlCiuUzJIwBw3Czlmvzy8QDhE8bf2fJZZLu8CkaeKDEIsoZ50fM76FrO0Qksx4ytfk7UPhhg/oIyqGU2q/GedjJXoOsdIziHrdtLUobz0fjkIfI3NlpLzmaNoSVseAObHtRkuNSWNLR9OYmawQN83YHKovP6AHbzvcXLhcq8BmX11npQfhN7Xm2/+pGuH2kIbGuoFz7z3pWmyYaNUjJGcRRVm9nPFczXWtXVNk9/vCjPrOk2A9PRg6oj1oGvhjDRk70g1MzLu42Rqht7qksZzX3KPgMPb7Bnl8EnDww1GFILiX7hTEcug9/hW/ElZwduIkwpMHODDAx9ui1NpGHd5phU4DV29Bj4tXSZM9OI6zzK1tvCfdH8DQmVPRB3huDC3U85Sd3X3dJcZlfKaroJ46R/zeWyATBuxiffcpkd16FKz+s5tFVz4l34N3Kxh/oVlndpv0l2lQdZH19AfhNP6Lrfl2PBspdDSnQgStLaQPAjLnhgEfP4n6pY1GaDPHTyyjJXOXkKsBw/SKM0moQADosvb4uq9kTy3R7bZXDTaJKkfHfYlADQi4SN7c0fMmfitC4LlwFPZ7TwzcPPMHpi+dq2Z2O22cZ5ImjkRB7htsF0LsIJwSQ== SUUCA" > /etc/ssh/suuca.pub
chmod 0644 /etc/ssh/suuca.pub
echo "TrustedUserCAKeys /etc/ssh/suuca.pub" >> /etc/ssh/sshd_config
echo "PermitRootLogin without-password" >> /etc/ssh/sshd_config
echo "AuthorizedPrincipalsFile /etc/ssh/auth_principals/%u" >> /etc/ssh/sshd_config
mkdir /etc/ssh/auth_principals
echo "root-everywhere" >> /etc/ssh/auth_principals/root
service ssh restart]] ></ac:plain-text-body></ac:structured-macro><h2>Signing a Certificate</h2><p>Steps to sign a certificate:</p><ol><li>Have the user generate a public/private ssh key-pair on pal.</li><li>Copy their public key to the root key signing server and place it in `/home/suuca/my-ca/user-requests`</li><li>Sign the ssh key with the command below.</li><li>Copy the contents of the resulting username_id_rsa-cert.pub.</li><li>Place the copied sign cert contents to pal in /home/username/.ssh/id_rsa-cert.pub<br />NOTE: the name of the cert file must match the naming convention of their public/private key pair.&nbsp;</li></ol><p>&nbsp;</p><p>This is a TextExpander snippet that prompts for a username, the zones this user is allowed to access, and a serial number for the certificate.</p><ac:structured-macro ac:macro-id="3d77b327-7eab-4c15-988c-7e7d065244f3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -s ../suuca -I %filltext:name=username% -n %filltext:name=zones% -z %filltext:name=serial_number% %filltext:name=username%_id_rsa.pub;cat %filltext:name=username%_id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><h2>Verifying a Signed Certificate</h2><p>This can be done on the root signing host, or on pal. The output will show the username, serial number, and the authorized principals (zones).</p><ac:structured-macro ac:macro-id="08fdd4fb-a81e-430f-8b16-9e6b9af91fd2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -Lf .ssh/id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>The output will look something like this:</p><ac:structured-macro ac:macro-id="96235f49-3f7d-4d6c-9d80-4004418aa4e4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh-keygen -Lf .ssh/id_rsa-cert.pub
.ssh/id_rsa-cert.pub:
Type: ssh-rsa-cert-v01@openssh.com user certificate
Public key: RSA-CERT 28:3e:4a:b2:db:d4:f1:64:59:00:cd:14:f4:2a:e5:98
Signing CA: RSA ca:bb:7a:1b:72:75:48:20:f4:b3:91:cc:e2:8d:60:84
Key ID: "grimesp"
Serial: 2
Valid: forever
Principals:
root-everywhere
zone-dba
zone-portal
zone-jobsub
zone-docker
Critical Options: (none)
Extensions:
permit-X11-forwarding
permit-agent-forwarding
permit-port-forwarding
permit-pty
permit-user-rc
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 7
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
originalVersion: 43319324
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">55607304</id>
<property name="hibernateVersion">7</property>
<property name="title">SSH Signed Certificates</property>
<property name="lowerTitle">ssh signed certificates</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">55738374</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">55640088</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">55640087</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate" />
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate" />
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319324</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 68190211
<property name="body"><ac:structured-macro ac:macro-id="f12160db-0d69-495f-8b05-318631853549" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[The key to creating self-signed certificates in Tomcat is to remember the key files/components involved:
<yourkeystore> and cacerts, and an existing Java HOME variable.
<yourkeystore> will be whatever you decide to call it when creating the self-signed certificate. For example, the following
command creates a keystore called mykeystore with an alias of tomcat and a validity of 10 years in the C:\ssl directory:
%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA -keystore C:\ssl\mykeystore -validity 3650
remember first and last name must be the host+domain, i.e. tntrans.suu.edu
Export it:
%JAVA_HOME%\bin\keytool -export -alias tomcat -file D:\ssl\exported.cert -keystore C:\ssl\mykeystore
Once created, then you must import it into your existing CACERTS file for it to be 'trusted':
%JAVA_HOME%\bin\keytool -import -alias tomcat -trustcacerts -file D:\SSL\exported.cert -keystore %JAVA_HOME%\jre\lib\security\cacerts (this pass will be changeit)
]] ></ac:plain-text-body></ac:structured-macro>
<p><span style="color: rgb(51,51,51);">Installing your Certificate with Jakarta-Tomcat.</span><br />
<span style="color: rgb(51,51,51);">(For Linux &amp; Windows)</span><span style="color: rgb(51,51,51);">&nbsp;</span></p>
<table><tbody>
<tr>
<td><p> <span style="color: rgb(51,51,51);">This document explains how to generate and install a Server Digital Certificate, and answers any question you might have.</span> </p></td>
<th><p> <span style="color: rgb(51,51,51);"><strong>Creating a Certificate Signing Request</strong></span><br class="atl-forced-newline" /> </p></th>
</tr>
<tr>
<td><p> <span style="color: rgb(51,51,51);">1. Generate a private key with the following command:</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);"><strong>$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA -keysize 1024 -validity 730 -keystore /path/to/domainname.kdb</strong></span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">You will be prompted for a password. Tomcat uses a default password of &quot;changeit&quot; - do NOT use that. If you use a different password, you will need to specify a custom password in the server.xml configuration file.</span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">In the next field you will be asked &quot;What is your first and last name?&quot; At this prompt, you must specify the common name (FQDN) of your web site.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">You will then be prompted for your organizational unit, organization, etc.</span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">2. Generate the Certificate Signing Request (CSR)</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);"><strong>$JAVA_HOME/bin/keytool -certreq -alias tomcat -keystore /path/to/keystore.kdb -file servername.csr</strong></span><br class="atl-forced-newline" /> <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">3. Now go to</span><span style="color: rgb(51,51,51);">&nbsp;</span>ipsCA<span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">, select your certificate and fill in the form with your personal data, paste your certificate request in the CSR field and make sure that you include BEGIN NEW CERTIFICATE REQUEST and END NEW CERTIFICATE REQUEST in your copied text.</span><br class="atl-forced-newline" />
<br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">4. Make a backup of the keystore.kdb key database. It would be useful for you if your server crashes.</span><br class="atl-forced-newline" /> </p></td>
<td><p>&nbsp;</p></td>
</tr>
<tr>
<td><p> <span style="color: rgb(51,51,51);"><strong>Installing a Server Digital Certificate</strong></span><br class="atl-forced-newline" /> </p></td>
</tr>
<tr>
<td><p> <span style="color: rgb(51,51,51);"><strong>Upload a New SSL Certificate</strong></span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">After you receive your certificate,</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>two other certificates will be necessary to setup your SSL Server, IPS SERVIDORES ROOT CERTIFICATE and the intermediate CA IPSCA CLASEA1</strong></span><span style="color: rgb(51,51,51);">.</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>It is essential that these certificates are also&nbsp; installed on your webserver in order to establish correct SSL connections</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">with your customer's browsers. Should they be required, you may download these certificates individually or collectively as a bundled file below:</span><br class="atl-forced-newline" />
IPSServidores.crt <br class="atl-forced-newline" />
IPSCACLASEA1.crt <br class="atl-forced-newline" />
IPS-IPSCABUNDLE.CRT <br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">You must first export the certificates in the following format:</span></p>
<ol>
<li><span style="color: rgb(51,51,51);">Copy the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>IPSCACLASEA1 Chained CA certificate</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">into a text editor such as notepad and save as</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>chain.cer</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">on a Windows machine with IE 5+.</span></li>
<li><span style="color: rgb(51,51,51);">Copy your</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>web server certificate</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">into a text editor such as notepad and save as</span><span style="color: rgb(51,51,51);"><em>yourdomain.cer</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">on a Windows machine with IE 5+.</span></li>
<li><span style="color: rgb(51,51,51);">Copy the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>IPSServidores root CA</em></span><span style="color: rgb(51,51,51);"><em>&nbsp;</em></span><span style="color: rgb(51,51,51);"><em>certificate</em></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">into a text editor and save as</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><em>root.cer</em></span><span style="color: rgb(51,51,51);"><em>&nbsp;</em></span><span style="color: rgb(51,51,51);">on a Windows machine with IE 5+.</span></li>
<li><span style="color: rgb(51,51,51);">Double-click the root.cer and select the Details tab, then Copy to File, then select the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>Base-64</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">option, give your copied certificate a file name of</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>root_der.cer</strong></span></li>
<li><span style="color: rgb(51,51,51);">Double-click the chain.cer and select Install. Choose &quot;Place all certificates in following store&quot; and select Intermediate Certification Authorities. Complete the Wizard.</span></li>
<li><span style="color: rgb(51,51,51);">Double-click the chain.cer again and select the Details tab, then Copy to File, then select the</span><span style="color: rgb(51,51,51);"><strong>Base-64</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">option, give your copied certificate a file name of</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>chain_der.cer</strong></span></li>
<li><span style="color: rgb(51,51,51);">Double click the youdomain.cer and select the Details tab, then Copy to File, then select the</span><span style="color: rgb(51,51,51);"><strong>PKCS#7 (p7b)</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">option, also select the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>Include all certificates in the certification path</strong></span><span style="color: rgb(51,51,51);">, give your copied certificate a file name of</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>yourdomain.p7b</strong></span><span style="color: rgb(51,51,51);"><strong>The following certificate installations must be executed in the stated order.</strong></span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">1. Import the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>root_der.cer</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">and</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>chain_der.cer</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">files using:</span><span style="color: rgb(51,51,51);"><strong>$ keytool -import -trustcacerts -keystore my.kdb -alias root - file root_der.cer</strong></span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);"><strong>$ keytool -import -trustcacerts -keystore my.kdb -alias chain - file chain_der.cer</strong></span><span style="color: rgb(51,51,51);">{*}</span><span style="color: rgb(51,51,51);">With my.kdb being your keystore.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">2. Import the</span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);"><strong>yourdomain.p7b file</strong></span><span style="color: rgb(51,51,51);">&nbsp;</span><span style="color: rgb(51,51,51);">using:</span><span style="color: rgb(51,51,51);">{*}</span><span style="color: rgb(51,51,51);"><strong>keytool -import -trustcacerts -keystore my.kdb -alias tomcat -file yourdomain.p7b</strong></span><span style="color: rgb(51,51,51);">{*}</span><span style="color: rgb(51,51,51);">With my.kdb being your keystore.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">{*}Update server.xml configuration</span> <span style="color: rgb(51,51,51);">file:\* (file:*)</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">1. Open &quot;$JAKARTA_HOME/conf/server.xml&quot; in a text editor.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">2. Find the following section:</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">&lt;Connector</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">...</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">scheme=&quot;https&quot;</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">secure=&quot;true&quot;</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">keystoreFile=&quot;/pathto/my.kdb&quot;</span><span style="color: rgb(51,51,51);">&nbsp;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">keystorePass=&quot;mypassword&quot;</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">3. If you want Tomcat to use the default SSL port, change all instances of the port number 8443 to 443.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">4. Add the keystoreFile and keystorePass directives to correspond with the keystore file and password that you are using.</span><br class="atl-forced-newline" /> <span style="color: rgb(51,51,51);">5. Start or restart Tomcat using the appropriate startup script (startup.sh for unix/linux or startup.bat for windows)</span></li>
</ol>
</td>
<td><p>&nbsp;</p></td>
</tr>
</tbody></table>
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
originalVersion: 4063240
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">68190211</id>
<property name="hibernateVersion">1</property>
<property name="title">Managing Certificates on Tomcat</property>
<property name="lowerTitle">managing certificates on tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">68222979</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">67862543</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">67862544</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate" />
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate" />
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063240</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 68190217
<property name="body"><h2>Verify your signed certificate</h2><ac:structured-macro ac:macro-id="c8453d56-b326-4d81-ac5f-a430f89aa59f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh pal
ssh-keygen -Lf .ssh/id_rsa-cert.pub]] ></ac:plain-text-body></ac:structured-macro><p>The above command will show you which zones you are allowed to access.</p><h2>Laptop .ssh/config set up</h2><p>For each host that you want to ssh to, make sure you have an entry in your .ssh/config file that looks like the following:</p><ac:structured-macro ac:macro-id="bc74e489-b9ec-4f5c-bfc9-f33c7a54d43c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[Host awsjobsub1
Hostname 10.1.5.31
ProxyCommand ssh -o 'ForwardAgent yes' pal 'ssh-add && nc %h %p']] ></ac:plain-text-body></ac:structured-macro><p>You can then ssh like this:</p><ac:structured-macro ac:macro-id="529a1ca5-49ac-4533-8f43-b155aa54c4e7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh root@awsjobsub1
scp files root@awsjobsub1:]] ></ac:plain-text-body></ac:structured-macro><p>You will be tunneling through pal, your laptop ssh key will allow you to get to pal, your signed certificate on pal will allow you to get to the final destination server.</p><h2>Zones</h2><p>Your signed ssh certificate grants you access to zones. Zones determine which server you are allowed to authenticate to and which user you are allowed to authenticate as.</p><ul><li><strong>zone-dba</strong><ul><li>root</li><li>oracle</li><li>orawork</li></ul></li><li><strong>zone-portal</strong><ul><li>root</li><li>mysuuadmin</li></ul></li><li><strong>zone-docker</strong><ul><li>bannerxe</li></ul></li><li><strong>zone-jobsub</strong><ul><li>banner</li><li>banjobs</li></ul></li><li><strong>root-everywhere</strong><ul><li>root</li></ul></li></ul><p>Each server is put in one or more of the above zones. If the server is in the zone, you can ssh as the users listed under the zones&nbsp;</p><h2>If you are still having trouble:</h2><ac:structured-macro ac:macro-id="c15c2d41-156d-4723-89bb-ab706739759c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ssh -v[vvv] user@host
This will show debugging info - the more 'v's (up to 4) you add, the more debug info comes back]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
originalVersion: 43319326
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">68190217</id>
<property name="hibernateVersion">1</property>
<property name="title">SSH Signed Certificate End-User Notes</property>
<property name="lowerTitle">ssh signed certificate end-user notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">68222984</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">67862573</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">67862574</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate" />
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate" />
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">43319326</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 87785473
Fecha creación: 2011-11-16 08:49:08.000
<property name="body"><h2>Check the location of all resources</h2><ac:structured-macro ac:macro-id="3a7c9343-fa76-4e01-be17-015858e5d649" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo crm_mon -1
]] ></ac:plain-text-body></ac:structured-macro><h2>Migrate a resource to another node</h2><ac:structured-macro ac:macro-id="828c387a-a76e-41bf-b5a3-e9507b3c66db" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo crm_resource -M -r api_ip -H halb2
]] ></ac:plain-text-body></ac:structured-macro><h2>Move a resource back to its normal location</h2><ac:structured-macro ac:macro-id="b74004d9-c22a-4f99-9f09-4205a1900a46" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[crm_resource -U -r api_ip
]] ></ac:plain-text-body></ac:structured-macro><h2>List resources</h2><ac:structured-macro ac:macro-id="53ebdb5e-9bdb-4286-8681-5ae942e508da" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[crm_resource --list]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Stop a running resource and everything that depends on it (in order to delete it)</h2><ac:structured-macro ac:macro-id="24bd40fe-f568-42aa-829f-3307c71647f5" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ crm_resource --resource <resource_name_from_list> --set-parameter target-role --meta --parameter-value Stopped]] ></ac:plain-text-body></ac:structured-macro><h2>Check status of sticky table (must have haproxy.stat entry in haproxy.config)</h2><ac:structured-macro ac:macro-id="a99556bb-9cef-4f20-8e84-31d58a6deca7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[(Returned IP address removed for security)
#socat readline /var/run/haproxy.stat
prompt
>set timeout cli 1d
>show table
# table: banner-prod-inb, type: ip, size:512000, used:152
>show table banner-prod-inb
# table: banner-prod-inb, type: ip, size:512000, used:1
0x130df64: key=134.250.x.x use=0 exp=23192485 server_id=1
## TO CLEAR STICKY ENTRIES
>clear table banner-inb-prod]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Delete a resource</h2><ac:structured-macro ac:macro-id="0bbfcb02-2951-4caf-9954-fc3e20bc159f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[crm_resource -D -r my_first_ip -t primitive]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-09-17 23:09:12.471
originalVersion: 24346873
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">87785473</id>
<property name="hibernateVersion">1</property>
<property name="title">Routine Cluster Tasks (haproxy)</property>
<property name="lowerTitle">routine cluster tasks (haproxy)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">87818241</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">86671375</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">86671376</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-11-16 08:49:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-09-17 23:09:12.471</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346873</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 87785474
Fecha creación: 2011-08-05 07:47:21.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>This is the root page for our HAProxy documentation.</p></ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>How to check on the status of things</strong></p>
<ul>
<li><strong>Check status of HAProxy</strong>
<ul>
<li><a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb3.suu.edu:8001" rel="nofollow">http://halb3.suu.edu:8001</a></li>
</ul>
</li>
<li><strong>Check the status of the nodes</strong>
<ul>
<li>SSH into one of the nodes
<ac:structured-macro ac:macro-id="24c2d397-302e-4385-aaf0-001958d51f54" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
ssh halb1.suu.edu
sudo crm_mon --one-shot -V | grep Online
# The output will look something like this:
Online: [ halb1 halb2 halb3 ]
]] ></ac:plain-text-body></ac:structured-macro></li>
</ul>
</li>
</ul>
</ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<ul>
<li>We have three load balancer nodes running in a cluster. They are active/active and will automatically take over for the other if one goes down.</li>
<li>The load balance cluster has multiple shared IP addresses. The shared IP addresses are the user-facing IPs and that is where firewall rules are applied for user access.</li>
</ul>
<p>Current production setup example: (note we have more stuff behind our load balancers, but this demonstrates the basic idea.)</p>
<ac:structured-macro ac:macro-id="3e2c4a7c-6d41-49f2-94e0-bf409b8679e7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
shared IP=12.141
^^^^^^^^
12.142 12.143 5.24 5.25
-------+------------+-----------+-----+---
| | | |
+--+--+ +--+--+ +-+-+ +-+-+
| LB1 | | LB2 | | A | | B |
+-----+ +-----+ +---+ +---+
haproxy haproxy web servers
heartbeat heartbeat
pacemaker pacemaker
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>LB1</strong> = halb1.suu.edu<br />
<strong>LB2</strong> = halb2.suu.edu<br />
<strong>A</strong> = api1.suu.edu<br />
<strong>B</strong> = api2.suu.edu<br />
<strong>shared IP</strong> = api.suu.edu</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2012-03-21 10:07:35.000
originalVersion: 23495049
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">87785474</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">87818242</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">87851011</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">87851010</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">87851009</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">86671377</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">86671378</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2012-03-21 10:07:35.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 87785475
Fecha creación: 2011-08-09 08:18:56.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>These are the steps you need to take to put a new service behind our HAProxy load balancers.<br />
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.</p></ac:rich-text-body></ac:macro>
<h2>Setup HAProxy</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>You will need to modify the same file on both load balancer nodes.</li>
<li>Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.</li>
<li>You should also know the front-facing ipaddress that your service will be using for this step.</li>
</ul>
</ac:rich-text-body></ac:macro>
<p><strong>Edit <code>/etc/haproxy/haproxy.cfg</code> (on both nodes)</strong></p>
<p>You will be adding a new server farm. Here is an example farm.</p>
<ac:structured-macro ac:macro-id="d24b2078-0ce9-46cd-a3c4-f878a39b657f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.25:8080 maxconn 1 check
]] ></ac:plain-text-body></ac:structured-macro>
<p><ac:emoticon ac:name="warning" /> The listen port must be unique, so if 8000 and 8001 are taken, use 8002</p>
<p><strong>Restart haproxy</strong></p>
<ac:structured-macro ac:macro-id="42e769d3-5039-445e-b6fc-c23d6ca3ddf9" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/haproxy restart
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Commit your changes</strong></p>
<ac:structured-macro ac:macro-id="7099d610-457f-4edf-9391-09fad55f090a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
cd /etc/haproxy/
sudo hg commit -m "New server config."
]] ></ac:plain-text-body></ac:structured-macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
<a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a>
<a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></p></ac:rich-text-body></ac:macro>
<h2>Setup Apache</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>The same configuration will go on both load balander nodes, however, they are not exactly the same. IP addresses will be different.</li>
<li>You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.</li>
</ul>
</ac:rich-text-body></ac:macro>
<ol>
<li>Create a new virtual host configuration
<ac:structured-macro ac:macro-id="8f668288-381b-4403-bd3a-f755d7a87a16" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Modify yourservice-ssl
<ac:structured-macro ac:macro-id="962c290b-203c-4bfb-aaff-7e8ee178c485" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Enable your new virtual host
<ac:structured-macro ac:macro-id="1d88ee80-7ff1-46ea-9d08-12e658373850" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo a2ensite yourservice-ssl
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Reload apache
<ac:structured-macro ac:macro-id="dec61e9f-b213-4a57-9c3b-e003e051f5ae" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/apache2 reload
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Commit your changes
<ac:structured-macro ac:macro-id="0adbb605-fc2c-4dc8-a2ea-c316fc965543" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo hg add yourservice-ssl
sudo hg commit -m "New virtual host config file."
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Now do the same thing on the other load balancer node, but make sure the IP addresses for the <strong><code>ProxyPass</code></strong> and <strong><code>ProxyPassReverse</code></strong> are set to the IP address of that node.</li>
</ol>
<h2>Setup your front-facing ipaddress</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.</li>
<li>What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker</li>
</ul>
</ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>Tip:</strong><br />
The following commands only need to be run on one node. They will be replicated automatically to the second node.<br />
<strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu<br />
*eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro>
<ol>
<li><strong>Setup ipaddress resource</strong>
<ac:structured-macro ac:macro-id="3af3710a-ac6f-4907-b0ef-2d3c2a8c3577" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask=255.255.255.0 nic=eth0
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Set a preferred node for the ip resource</strong><br />
This tells Pacemaker which node the resource ip should live on when both nodes are up.
<ac:structured-macro ac:macro-id="988fc79e-d299-4d23-ace2-db9daddba225" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Setup Pacemaker monitoring</strong>
<ac:structured-macro ac:macro-id="b47bc63b-9f6a-45ac-bbc3-2234906bdab4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 40s:20s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Show running configuration</strong>
<ac:structured-macro ac:macro-id="a863556d-82f2-4700-b308-bcdfba7ee339" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:structured-macro></li>
</ol>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.</p></ac:rich-text-body></ac:macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-08-30 09:01:42.000
originalVersion: 23495059
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">87785475</id>
<property name="hibernateVersion">1</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">87818243</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">87851013</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">87851012</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">86671379</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">86671380</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-08-30 09:01:42.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 87785476
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:structured-macro ac:macro-id="37d8a760-3789-4805-90ad-ac9fbee775ef" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:structured-macro><h2>Configure Apache to run on ports 445, 5001, and 5000 in addition to the defaults</h2><ac:structured-macro ac:macro-id="51ec960a-53b6-49ab-8b0c-add78b2d7c45" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[# Edit apache ports file to listen on additional ports
vim /etc/apache/ports.conf
# It should look like the following:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
#NameVirtualHost *:80
Listen 80
Listen 81
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:structured-macro ac:macro-id="22c8f4e8-6fd0-4fb2-8156-f785e11604b4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:structured-macro><h2>Configure Apache Virtual Host</h2><ac:structured-macro ac:macro-id="4b051ac2-1171-4e9e-8f75-61e030dd30fc" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
Copy all files from working node (e.g. halb1) /etc/apache2/sites-available/
Remove default-ssl
Ensure default has correct site restrictions for server-status
]] ></ac:plain-text-body></ac:structured-macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:structured-macro ac:macro-id="d7cc412b-1132-46e1-9312-ec1680ed7d23" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:structured-macro><h2>Install heartbeat and pacemaker</h2><ac:structured-macro ac:macro-id="d326df89-da94-43d2-a806-3cd3babefb07" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:structured-macro ac:macro-id="3eaed0e4-715f-4789-af7e-c6a86487e4e3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[Copy working ha.cf file from another node (e.g. halb1), being sure to add your new node to the list. It should look something like this
sudo vim /etc/ha.d/ha.cf
autojoin any
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
node halb3
node halb4
crm respawn
]] ></ac:plain-text-body></ac:structured-macro><h2>Modify /etc/default/haproxy file</h2><ac:structured-macro ac:macro-id="3ad77fdb-6c36-4bd4-87c7-fc2acbd89953" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:structured-macro ac:macro-id="9ada7795-e7f4-4075-b8b7-4699cc611ed0" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:structured-macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Copy existing haproxy.cfg</strong></p><p>&nbsp;</p><ac:structured-macro ac:macro-id="435b39b6-ac58-441d-9105-cef6730dcad3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[Copy an existing /etc/haproxy/haproxy.cfg file from a working node to your new node.]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><strong>Restart heartbeat</strong></p><ac:structured-macro ac:macro-id="d060755b-3ee3-4b06-9687-f06abcbdb12a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:structured-macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:structured-macro ac:macro-id="cda45460-06ca-4701-852c-a5d324560804" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:structured-macro ac:macro-id="ac43636c-2703-4a1f-9ce2-dd3e661bc3f2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:structured-macro ac:macro-id="43aea737-3b8e-4beb-ade0-1dd0f5676823" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:structured-macro ac:macro-id="42f49261-82ef-45a2-b1ed-42da3809ec57" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:structured-macro ac:macro-id="cabfc831-cb5d-4b47-ae71-9434b3ecd8b5" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Show running configuration</strong></p><ac:structured-macro ac:macro-id="7a7b1ab2-d13b-4f97-a500-6b385a660272" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:structured-macro ac:macro-id="716c695f-8560-43e2-bc32-2ede2c1af63d" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-08-06 10:01:49.713
originalVersion: 23887880
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">87785476</id>
<property name="hibernateVersion">1</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">87818244</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">87851014</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">86671381</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">86671382</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-08-06 10:01:49.713</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 90669119
Fecha creación: 2011-08-05 07:47:21.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>This is the root page for our HAProxy documentation.</p></ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>How to check on the status of things</strong></p>
<ul>
<li><strong>Check status of HAProxy</strong>
<ul>
<li><a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb3.suu.edu:8001" rel="nofollow">http://halb3.suu.edu:8001</a></li>
</ul>
</li>
<li><strong>Check the status of the nodes</strong>
<ul>
<li>SSH into one of the nodes
<ac:structured-macro ac:macro-id="24c2d397-302e-4385-aaf0-001958d51f54" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
ssh halb1.suu.edu
sudo crm_mon --one-shot -V | grep Online
# The output will look something like this:
Online: [ halb1 halb2 halb3 ]
]] ></ac:plain-text-body></ac:structured-macro></li>
</ul>
</li>
</ul>
</ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<ul>
<li>We have three load balancer nodes running in a cluster. They are active/active and will automatically take over for the other if one goes down.</li>
<li>The load balance cluster has multiple shared IP addresses. The shared IP addresses are the user-facing IPs and that is where firewall rules are applied for user access.</li>
</ul>
<p>Current production setup example: (note we have more stuff behind our load balancers, but this demonstrates the basic idea.)</p>
<ac:structured-macro ac:macro-id="3e2c4a7c-6d41-49f2-94e0-bf409b8679e7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
shared IP=12.141
^^^^^^^^
12.142 12.143 5.24 5.25
-------+------------+-----------+-----+---
| | | |
+--+--+ +--+--+ +-+-+ +-+-+
| LB1 | | LB2 | | A | | B |
+-----+ +-----+ +---+ +---+
haproxy haproxy web servers
heartbeat heartbeat
pacemaker pacemaker
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>LB1</strong> = halb1.suu.edu<br />
<strong>LB2</strong> = halb2.suu.edu<br />
<strong>A</strong> = api1.suu.edu<br />
<strong>B</strong> = api2.suu.edu<br />
<strong>shared IP</strong> = api.suu.edu</p></property>
hibernateVersion: 4
version: 9
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2012-03-21 10:07:35.000
versionComment: Migrated to Confluence 5.3
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669119</id>
<property name="hibernateVersion">4</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">90701887</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2012-03-21 10:07:35.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 90669157
Fecha creación: 2009-06-19 09:04:03.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>A place to collect Tomcat documentation.</p></ac:rich-text-body></ac:macro>
<h2>Tomcat Documentation</h2>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>The following list is a collection of Tomcat documentation from all over our wiki. Anything with the label &quot;tomcat&quot; will show up in this list.</p></ac:rich-text-body></ac:macro>
<ac:structured-macro ac:macro-id="a3fd06db-7e68-401b-932d-bc3d2a0d6a39" ac:name="contentbylabel" ac:schema-version="2"><ac:parameter ac:name="labels">tomcat</ac:parameter><ac:parameter ac:name="cql">label = &quot;tomcat&quot;</ac:parameter></ac:structured-macro></property>
hibernateVersion: 3
version: 3
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2009-06-19 09:04:05.000
versionComment: Migrated to Confluence 5.3
originalVersion: 12681451
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669157</id>
<property name="hibernateVersion">3</property>
<property name="title">Tomcat</property>
<property name="lowerTitle">tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">90701925</id>
</element>
</collection>
<property name="version">3</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2009-06-19 09:04:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2009-06-19 09:04:05.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681451</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 90669212
Fecha creación: 2011-09-13 10:22:20.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>Documentation for managing a firewall on an Ubuntu box.</p></ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<p>One of the simplest ways to manage a firewall on Ubuntu is to use the command <strong><code>ufw</code></strong>. It stands for &quot;uncomplicated firewall&quot; and it is installed by default. The firewall is not running by default though.</p>
<h2>Initial Setup</h2>
<p><strong>Set default policy to deny</strong></p>
<ac:structured-macro ac:macro-id="5d24a6d8-898f-4352-859b-169b551bd847" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo ufw default deny
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Turn on the firewall</strong></p>
<ac:structured-macro ac:macro-id="c282e371-0262-4fed-a7f5-6f071da5bc7b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo ufw enable
]] ></ac:plain-text-body></ac:structured-macro>
<h2>Some sample rules</h2>
<p><strong>Allow a specific IP address on any port.</strong></p>
<ac:structured-macro ac:macro-id="d6e8c6b5-66e2-4767-a3bd-0de29e20072e" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo ufw allow from 134.250.4.188
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Allow a subnet range to a specific port</strong></p>
<ac:structured-macro ac:macro-id="7ebe3701-13eb-4671-98f5-a9dce23ec231" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# This allows ssh access from the VPN subnet.
sudo ufw allow from 134.250.236.0/24 to any port 22
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Block a specific IP</strong></p>
<ac:structured-macro ac:macro-id="61c5b54b-ff47-49eb-8fb5-62d1fa0164b3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo ufw deny 134.250.4.77
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 4
version: 4
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-09-13 10:23:19.000
versionComment: Migrated to Confluence 5.3
originalVersion: 23888007
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669212</id>
<property name="hibernateVersion">4</property>
<property name="title">Ubuntu Firewall - UFW</property>
<property name="lowerTitle">ubuntu firewall - ufw</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">90701980</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-09-13 10:22:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-09-13 10:23:19.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23888007</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 90669278
Fecha creación: 2011-08-09 08:18:56.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>These are the steps you need to take to put a new service behind our HAProxy load balancers.<br />
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.</p></ac:rich-text-body></ac:macro>
<h2>Setup HAProxy</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>You will need to modify the same file on both load balancer nodes.</li>
<li>Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.</li>
<li>You should also know the front-facing ipaddress that your service will be using for this step.</li>
</ul>
</ac:rich-text-body></ac:macro>
<p><strong>Edit <code>/etc/haproxy/haproxy.cfg</code> (on both nodes)</strong></p>
<p>You will be adding a new server farm. Here is an example farm.</p>
<ac:structured-macro ac:macro-id="d24b2078-0ce9-46cd-a3c4-f878a39b657f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.25:8080 maxconn 1 check
]] ></ac:plain-text-body></ac:structured-macro>
<p><ac:emoticon ac:name="warning" /> The listen port must be unique, so if 8000 and 8001 are taken, use 8002</p>
<p><strong>Restart haproxy</strong></p>
<ac:structured-macro ac:macro-id="42e769d3-5039-445e-b6fc-c23d6ca3ddf9" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/haproxy restart
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Commit your changes</strong></p>
<ac:structured-macro ac:macro-id="7099d610-457f-4edf-9391-09fad55f090a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
cd /etc/haproxy/
sudo hg commit -m "New server config."
]] ></ac:plain-text-body></ac:structured-macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
<a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a>
<a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></p></ac:rich-text-body></ac:macro>
<h2>Setup Apache</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>The same configuration will go on both load balander nodes, however, they are not exactly the same. IP addresses will be different.</li>
<li>You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.</li>
</ul>
</ac:rich-text-body></ac:macro>
<ol>
<li>Create a new virtual host configuration
<ac:structured-macro ac:macro-id="8f668288-381b-4403-bd3a-f755d7a87a16" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Modify yourservice-ssl
<ac:structured-macro ac:macro-id="962c290b-203c-4bfb-aaff-7e8ee178c485" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Enable your new virtual host
<ac:structured-macro ac:macro-id="1d88ee80-7ff1-46ea-9d08-12e658373850" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo a2ensite yourservice-ssl
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Reload apache
<ac:structured-macro ac:macro-id="dec61e9f-b213-4a57-9c3b-e003e051f5ae" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/apache2 reload
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Commit your changes
<ac:structured-macro ac:macro-id="0adbb605-fc2c-4dc8-a2ea-c316fc965543" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo hg add yourservice-ssl
sudo hg commit -m "New virtual host config file."
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Now do the same thing on the other load balancer node, but make sure the IP addresses for the <strong><code>ProxyPass</code></strong> and <strong><code>ProxyPassReverse</code></strong> are set to the IP address of that node.</li>
</ol>
<h2>Setup your front-facing ipaddress</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.</li>
<li>What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker</li>
</ul>
</ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>Tip:</strong><br />
The following commands only need to be run on one node. They will be replicated automatically to the second node.<br />
<strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu<br />
*eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro>
<ol>
<li><strong>Setup ipaddress resource</strong>
<ac:structured-macro ac:macro-id="3af3710a-ac6f-4907-b0ef-2d3c2a8c3577" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask=255.255.255.0 nic=eth0
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Set a preferred node for the ip resource</strong><br />
This tells Pacemaker which node the resource ip should live on when both nodes are up.
<ac:structured-macro ac:macro-id="988fc79e-d299-4d23-ace2-db9daddba225" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Setup Pacemaker monitoring</strong>
<ac:structured-macro ac:macro-id="b47bc63b-9f6a-45ac-bbc3-2234906bdab4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 40s:20s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Show running configuration</strong>
<ac:structured-macro ac:macro-id="a863556d-82f2-4700-b308-bcdfba7ee339" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:structured-macro></li>
</ol>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.</p></ac:rich-text-body></ac:macro></property>
hibernateVersion: 2
version: 9
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-08-30 09:01:42.000
versionComment: Migrated to Confluence 5.3
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669278</id>
<property name="hibernateVersion">2</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">90702046</id>
</element>
</collection>
<property name="version">9</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-08-30 09:01:42.000</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 90669325
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:structured-macro ac:macro-id="37d8a760-3789-4805-90ad-ac9fbee775ef" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:structured-macro><h2>Configure Apache to run on ports 445, 5001, and 5000 in addition to the defaults</h2><ac:structured-macro ac:macro-id="51ec960a-53b6-49ab-8b0c-add78b2d7c45" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[# Edit apache ports file to listen on additional ports
vim /etc/apache/ports.conf
# It should look like the following:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
#NameVirtualHost *:80
Listen 80
Listen 81
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:structured-macro ac:macro-id="22c8f4e8-6fd0-4fb2-8156-f785e11604b4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:structured-macro><h2>Configure Apache Virtual Host</h2><ac:structured-macro ac:macro-id="4b051ac2-1171-4e9e-8f75-61e030dd30fc" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
Copy all files from working node (e.g. halb1) /etc/apache2/sites-available/
Remove default-ssl
Ensure default has correct site restrictions for server-status
]] ></ac:plain-text-body></ac:structured-macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:structured-macro ac:macro-id="d7cc412b-1132-46e1-9312-ec1680ed7d23" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:structured-macro><h2>Install heartbeat and pacemaker</h2><ac:structured-macro ac:macro-id="d326df89-da94-43d2-a806-3cd3babefb07" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:structured-macro ac:macro-id="3eaed0e4-715f-4789-af7e-c6a86487e4e3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[Copy working ha.cf file from another node (e.g. halb1), being sure to add your new node to the list. It should look something like this
sudo vim /etc/ha.d/ha.cf
autojoin any
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
node halb3
node halb4
crm respawn
]] ></ac:plain-text-body></ac:structured-macro><h2>Modify /etc/default/haproxy file</h2><ac:structured-macro ac:macro-id="3ad77fdb-6c36-4bd4-87c7-fc2acbd89953" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:structured-macro ac:macro-id="9ada7795-e7f4-4075-b8b7-4699cc611ed0" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:structured-macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Copy existing haproxy.cfg</strong></p><p>&nbsp;</p><ac:structured-macro ac:macro-id="435b39b6-ac58-441d-9105-cef6730dcad3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[Copy an existing /etc/haproxy/haproxy.cfg file from a working node to your new node.]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><strong>Restart heartbeat</strong></p><ac:structured-macro ac:macro-id="d060755b-3ee3-4b06-9687-f06abcbdb12a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:structured-macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:structured-macro ac:macro-id="cda45460-06ca-4701-852c-a5d324560804" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:structured-macro ac:macro-id="ac43636c-2703-4a1f-9ce2-dd3e661bc3f2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:structured-macro ac:macro-id="43aea737-3b8e-4beb-ade0-1dd0f5676823" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:structured-macro ac:macro-id="42f49261-82ef-45a2-b1ed-42da3809ec57" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:structured-macro ac:macro-id="cabfc831-cb5d-4b47-ae71-9434b3ecd8b5" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Show running configuration</strong></p><ac:structured-macro ac:macro-id="7a7b1ab2-d13b-4f97-a500-6b385a660272" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:structured-macro ac:macro-id="716c695f-8560-43e2-bc32-2ede2c1af63d" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 6
version: 15
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-08-06 10:01:49.713
versionComment: Migrated to Confluence 5.3
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">90669325</id>
<property name="hibernateVersion">6</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">90702093</id>
</element>
</collection>
<property name="version">15</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-08-06 10:01:49.713</property>
<property name="versionComment">Migrated to Confluence 5.3</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 117407810
Fecha creación: 2011-08-05 07:47:21.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>This is the root page for our HAProxy documentation.</p></ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>How to check on the status of things</strong></p>
<ul>
<li><strong>Check status of HAProxy</strong>
<ul>
<li><a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></li>
<li><a class="external-link" href="http://halb3.suu.edu:8001" rel="nofollow">http://halb3.suu.edu:8001</a></li>
</ul>
</li>
<li><strong>Check the status of the nodes</strong>
<ul>
<li>SSH into one of the nodes
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="24c2d397-302e-4385-aaf0-001958d51f54"><ac:plain-text-body><![CDATA[
ssh halb1.suu.edu
sudo crm_mon --one-shot -V | grep Online
# The output will look something like this:
Online: [ halb1 halb2 halb3 ]
]] ></ac:plain-text-body></ac:structured-macro></li>
</ul>
</li>
</ul>
</ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<ul>
<li>We have three load balancer nodes running in a cluster. They are active/active and will automatically take over for the other if one goes down.</li>
<li>The load balance cluster has multiple shared IP addresses. The shared IP addresses are the user-facing IPs and that is where firewall rules are applied for user access.</li>
</ul>
<p>Current production setup example: (note we have more stuff behind our load balancers, but this demonstrates the basic idea.)</p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="3e2c4a7c-6d41-49f2-94e0-bf409b8679e7"><ac:plain-text-body><![CDATA[
shared IP=12.141
^^^^^^^^
12.142 12.143 5.24 5.25
-------+------------+-----------+-----+---
| | | |
+--+--+ +--+--+ +-+-+ +-+-+
| LB1 | | LB2 | | A | | B |
+-----+ +-----+ +---+ +---+
haproxy haproxy web servers
heartbeat heartbeat
pacemaker pacemaker
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>LB1</strong> = halb1.suu.edu<br />
<strong>LB2</strong> = halb2.suu.edu<br />
<strong>A</strong> = api1.suu.edu<br />
<strong>B</strong> = api2.suu.edu<br />
<strong>shared IP</strong> = api.suu.edu</p></property>
hibernateVersion: 5
version: 10
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2012-03-21 10:07:36.000
versionComment: Migration of unmigrated content due to installation of a new plugin
originalVersion: 23495049
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">117407810</id>
<property name="hibernateVersion">5</property>
<property name="title">HAProxy</property>
<property name="lowerTitle">haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">117440578</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-05 07:47:21.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2012-03-21 10:07:36.000</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495049</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 117407937
Fecha creación: 2011-08-11 09:05:40.000
<property name="body"><h2>Install Apache</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="37d8a760-3789-4805-90ad-ac9fbee775ef"><ac:plain-text-body><![CDATA[
sudo apt-get install apache2 libapache2-mod-proxy-html
a2enmod ssl
a2enmod proxy
a2enmod proxy_http
sudo service apache2 restart
]] ></ac:plain-text-body></ac:structured-macro><h2>Configure Apache to run on ports 445, 5001, and 5000 in addition to the defaults</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="51ec960a-53b6-49ab-8b0c-add78b2d7c45"><ac:plain-text-body><![CDATA[# Edit apache ports file to listen on additional ports
vim /etc/apache/ports.conf
# It should look like the following:
# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz
#NameVirtualHost *:80
Listen 80
Listen 81
<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
Listen 445
Listen 5001
Listen 5000
</IfModule>]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Apache SSL</h2><p>Get our wildcard certificate and private key.</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="22c8f4e8-6fd0-4fb2-8156-f785e11604b4"><ac:plain-text-body><![CDATA[
sudo mv server.crt /etc/ssl/certs/suu_edu.crt
sudo mv server.key /etc/ssl/private/suu_edu.key
sudo mv RapidSSL_CA_Bundle.pem /etc/ssl/certs/]] ></ac:plain-text-body></ac:structured-macro><h2>Configure Apache Virtual Host</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="4b051ac2-1171-4e9e-8f75-61e030dd30fc"><ac:plain-text-body><![CDATA[
Copy all files from working node (e.g. halb1) /etc/apache2/sites-available/
Remove default-ssl
Ensure default has correct site restrictions for server-status
]] ></ac:plain-text-body></ac:structured-macro><h2>Install HAProxy</h2><ol><li><a class="external-link" href="http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid" rel="nofollow">http://www.zivtech.com/blog/setting-ip-failover-heartbeat-and-pacemaker-ubuntu-lucid</a></li></ol><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d7cc412b-1132-46e1-9312-ec1680ed7d23"><ac:plain-text-body><![CDATA[
sudo apt-get install haproxy
]] ></ac:plain-text-body></ac:structured-macro><h2>Install heartbeat and pacemaker</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d326df89-da94-43d2-a806-3cd3babefb07"><ac:plain-text-body><![CDATA[
sudo apt-get install heartbeat pacemaker
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Create ha.cf file (main heartbeat config file)</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="3eaed0e4-715f-4789-af7e-c6a86487e4e3"><ac:plain-text-body><![CDATA[Copy working ha.cf file from another node (e.g. halb1), being sure to add your new node to the list. It should look something like this
sudo vim /etc/ha.d/ha.cf
autojoin any
bcast eth0
warntime 5
deadtime 15
initdead 60
keepalive 2
node halb1
node halb2
node halb3
node halb4
crm respawn
]] ></ac:plain-text-body></ac:structured-macro><h2>Modify /etc/default/haproxy file</h2><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="3ad77fdb-6c36-4bd4-87c7-fc2acbd89953"><ac:plain-text-body><![CDATA[ENABLED=1
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Create authkeys file for heartbeat</strong> (original node only)<br /> The following run as a shell script will generate the key, create the authkeys file and set proper permissions on the file.</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="9ada7795-e7f4-4075-b8b7-4699cc611ed0"><ac:plain-text-body><![CDATA[
#!/bin/bash
( echo -ne "auth 1\n1 sha1 "; dd if=/dev/urandom bs=512 count=1 | openssl md5 ) > /etc/ha.d/authkeys
exit
#chmod 0600 /etc/ha.d/authkeys
]] ></ac:plain-text-body></ac:structured-macro><p>If this is an addtional node, simply copy the authkeys from the original server to your new node</p><p><strong>Copy existing haproxy.cfg</strong></p><p>&nbsp;</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="435b39b6-ac58-441d-9105-cef6730dcad3"><ac:plain-text-body><![CDATA[Copy an existing /etc/haproxy/haproxy.cfg file from a working node to your new node.]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><strong>Restart heartbeat</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d060755b-3ee3-4b06-9687-f06abcbdb12a"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/heartbeat restart
]] ></ac:plain-text-body></ac:structured-macro><p><strong><strong>Restart haproxy</strong></strong></p><p>&nbsp;</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="cda45460-06ca-4701-852c-a5d324560804"><ac:plain-text-body><![CDATA[sudo /etc/init.d/haproxy restart ]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><strong>Verify that they are online</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="ac43636c-2703-4a1f-9ce2-dd3e661bc3f2"><ac:plain-text-body><![CDATA[
sudo crm_mon -1 | grep Online
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Configure shared IPAddress</strong> <br /> This is part of Pacemaker. To Pacemaker, an ipaddress is a resource.</p><ac:macro ac:name="suu-tip"><ac:parameter ac:name="atlassian-macro-output-type">BLOCK</ac:parameter><ac:rich-text-body><p><strong>Tip:</strong> <br /> The following commands only need to be run on one node. They will be replicated automatically to the second node. <br /> <strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu <br /> *eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="43aea737-3b8e-4beb-ade0-1dd0f5676823"><ac:plain-text-body><![CDATA[
sudo crm configure property stonith-enabled=false
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask="255.255.255.0" nic="eth0"
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Set a preferred node for the ip resource</strong> <br /> This tells Pacemaker which node the resource ip should live on when both nodes are up.</p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="42f49261-82ef-45a2-b1ed-42da3809ec57"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Setup Pacemaker monitoring</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="cabfc831-cb5d-4b47-ae71-9434b3ecd8b5"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 15s:5s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Show running configuration</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="7a7b1ab2-d13b-4f97-a500-6b385a660272"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:structured-macro><p><strong>Allow IP Addresses to bind even if they are not assigned to a particular node</strong></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="716c695f-8560-43e2-bc32-2ede2c1af63d"><ac:plain-text-body><![CDATA[sudo vim /etc/sysctl.conf
# Add the following line to the bottom of the file
net.ipv4.ip_nonlocal_bind=1
# Save, and reboot]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 7
version: 16
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-08-06 10:01:50.713
versionComment: Migration of unmigrated content due to installation of a new plugin
originalVersion: 23887880
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">117407937</id>
<property name="hibernateVersion">7</property>
<property name="title">HAProxy - Initial Configuration Notes</property>
<property name="lowerTitle">haproxy - initial configuration notes</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">117440705</id>
</element>
</collection>
<property name="version">16</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-11 09:05:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-08-06 10:01:50.713</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23887880</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 117407945
Fecha creación: 2009-06-19 09:04:03.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>A place to collect Tomcat documentation.</p></ac:rich-text-body></ac:macro>
<h2>Tomcat Documentation</h2>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>The following list is a collection of Tomcat documentation from all over our wiki. Anything with the label &quot;tomcat&quot; will show up in this list.</p></ac:rich-text-body></ac:macro>
<ac:structured-macro ac:name="contentbylabel" ac:schema-version="3" ac:macro-id="a3fd06db-7e68-401b-932d-bc3d2a0d6a39"><ac:parameter ac:name="labels">tomcat</ac:parameter><ac:parameter ac:name="cql">label = &quot;tomcat&quot;</ac:parameter></ac:structured-macro></property>
hibernateVersion: 4
version: 4
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2009-06-19 09:04:06.000
versionComment: Migration of unmigrated content due to installation of a new plugin
originalVersion: 12681451
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">117407945</id>
<property name="hibernateVersion">4</property>
<property name="title">Tomcat</property>
<property name="lowerTitle">tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">117440713</id>
</element>
</collection>
<property name="version">4</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2009-06-19 09:04:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2009-06-19 09:04:06.000</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681451</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 117407976
Fecha creación: 2011-09-13 10:22:20.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>Documentation for managing a firewall on an Ubuntu box.</p></ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<p>One of the simplest ways to manage a firewall on Ubuntu is to use the command <strong><code>ufw</code></strong>. It stands for &quot;uncomplicated firewall&quot; and it is installed by default. The firewall is not running by default though.</p>
<h2>Initial Setup</h2>
<p><strong>Set default policy to deny</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="5d24a6d8-898f-4352-859b-169b551bd847"><ac:plain-text-body><![CDATA[
sudo ufw default deny
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Turn on the firewall</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="c282e371-0262-4fed-a7f5-6f071da5bc7b"><ac:plain-text-body><![CDATA[
sudo ufw enable
]] ></ac:plain-text-body></ac:structured-macro>
<h2>Some sample rules</h2>
<p><strong>Allow a specific IP address on any port.</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d6e8c6b5-66e2-4767-a3bd-0de29e20072e"><ac:plain-text-body><![CDATA[
sudo ufw allow from 134.250.4.188
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Allow a subnet range to a specific port</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="7ebe3701-13eb-4671-98f5-a9dce23ec231"><ac:plain-text-body><![CDATA[
# This allows ssh access from the VPN subnet.
sudo ufw allow from 134.250.236.0/24 to any port 22
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Block a specific IP</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="61c5b54b-ff47-49eb-8fb5-62d1fa0164b3"><ac:plain-text-body><![CDATA[
sudo ufw deny 134.250.4.77
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 5
version: 5
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-09-13 10:23:20.000
versionComment: Migration of unmigrated content due to installation of a new plugin
originalVersion: 23888007
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">117407976</id>
<property name="hibernateVersion">5</property>
<property name="title">Ubuntu Firewall - UFW</property>
<property name="lowerTitle">ubuntu firewall - ufw</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">117440744</id>
</element>
</collection>
<property name="version">5</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-09-13 10:22:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-09-13 10:23:20.000</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23888007</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 117408001
Fecha creación: 2011-08-09 08:18:56.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>These are the steps you need to take to put a new service behind our HAProxy load balancers.<br />
This document assumes that you already have your services running that you want to balance and that both load balancer nodes have appropriate firewall rules in place to access those services.</p></ac:rich-text-body></ac:macro>
<h2>Setup HAProxy</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>You will need to modify the same file on both load balancer nodes.</li>
<li>Both load balancer nodes need to have the appropriate firewall rules in place to get to your servers before this point.</li>
<li>You should also know the front-facing ipaddress that your service will be using for this step.</li>
</ul>
</ac:rich-text-body></ac:macro>
<p><strong>Edit <code>/etc/haproxy/haproxy.cfg</code> (on both nodes)</strong></p>
<p>You will be adding a new server farm. Here is an example farm.</p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d24b2078-0ce9-46cd-a3c4-f878a39b657f"><ac:plain-text-body><![CDATA[
listen api-webfarm 134.250.12.142:8000
mode http
balance roundrobin
option httpclose
option forwardfor
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 1 check
server api2 134.250.5.25:8080 maxconn 1 check
]] ></ac:plain-text-body></ac:structured-macro>
<p><ac:emoticon ac:name="warning" /> The listen port must be unique, so if 8000 and 8001 are taken, use 8002</p>
<p><strong>Restart haproxy</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="42e769d3-5039-445e-b6fc-c23d6ca3ddf9"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/haproxy restart
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Commit your changes</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="7099d610-457f-4edf-9391-09fad55f090a"><ac:plain-text-body><![CDATA[
cd /etc/haproxy/
sudo hg commit -m "New server config."
]] ></ac:plain-text-body></ac:structured-macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to see if HAProxy thinks your service is up or down by going to:
<a class="external-link" href="http://halb1.suu.edu:8001" rel="nofollow">http://halb1.suu.edu:8001</a>
<a class="external-link" href="http://halb2.suu.edu:8001" rel="nofollow">http://halb2.suu.edu:8001</a></p></ac:rich-text-body></ac:macro>
<h2>Setup Apache</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>The same configuration will go on both load balander nodes, however, they are not exactly the same. IP addresses will be different.</li>
<li>You can probably use an existing apache virtual host config file as a starting point. All you really need to do is then change ipaddresses and ports. No need to change the ssl settings because we are using our wildcard certificate.</li>
</ul>
</ac:rich-text-body></ac:macro>
<ol>
<li>Create a new virtual host configuration
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="8f668288-381b-4403-bd3a-f755d7a87a16"><ac:plain-text-body><![CDATA[
sudo cp /etc/apache2/sites-available/api-ssl /etc/apache2/sites-available/yourservice-ssl
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Modify yourservice-ssl
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="962c290b-203c-4bfb-aaff-7e8ee178c485"><ac:plain-text-body><![CDATA[
sudo vim /etc/apache2/sites-available/yourservice-ssl
# Edit the ipaddress ie <VirtualHost 134.250.12.141:443> This should be the front-facing ipaddress for your application. The one that users will be connecting to.
# Edit just the ports in ProxyPass and ProxyPassReverse. The ports would be the haproxy ports you configured in the HAProxy step above.
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Enable your new virtual host
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="1d88ee80-7ff1-46ea-9d08-12e658373850"><ac:plain-text-body><![CDATA[
sudo a2ensite yourservice-ssl
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Reload apache
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="dec61e9f-b213-4a57-9c3b-e003e051f5ae"><ac:plain-text-body><![CDATA[
sudo /etc/init.d/apache2 reload
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Commit your changes
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="0adbb605-fc2c-4dc8-a2ea-c316fc965543"><ac:plain-text-body><![CDATA[
cd /etc/apache2/sites-available/
sudo hg add yourservice-ssl
sudo hg commit -m "New virtual host config file."
]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Now do the same thing on the other load balancer node, but make sure the IP addresses for the <strong><code>ProxyPass</code></strong> and <strong><code>ProxyPassReverse</code></strong> are set to the IP address of that node.</li>
</ol>
<h2>Setup your front-facing ipaddress</h2>
<ac:macro ac:name="suu-info"><ac:rich-text-body>
<ul>
<li>This step only needs to be done on one of the load balancer nodes. It will be automatically replicated to the second node.</li>
<li>What you are doing here is setting up the ipaddress that users will hit. It is a shared ipaddress between the two nodes. This configuration is handled by Pacemaker</li>
</ul>
</ac:rich-text-body></ac:macro>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p><strong>Tip:</strong><br />
The following commands only need to be run on one node. They will be replicated automatically to the second node.<br />
<strong>api_ip</strong> - is just the name we came up with to name this ip resource. This one is for the ip that will be used for api.suu.edu<br />
*eth0&quot; - the nic we want this ip to use.</p></ac:rich-text-body></ac:macro>
<ol>
<li><strong>Setup ipaddress resource</strong>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="3af3710a-ac6f-4907-b0ef-2d3c2a8c3577"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# primitive api_ip IPaddr params ip=134.250.12.141 cidr_netmask=255.255.255.0 nic=eth0
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Set a preferred node for the ip resource</strong><br />
This tells Pacemaker which node the resource ip should live on when both nodes are up.
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="988fc79e-d299-4d23-ace2-db9daddba225"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# location api_ip_pref api_ip 100: halb1
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Setup Pacemaker monitoring</strong>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="b47bc63b-9f6a-45ac-bbc3-2234906bdab4"><ac:plain-text-body><![CDATA[
sudo crm configure
crm(live)configure# monitor api_ip 40s:20s
crm(live)configure# commit
crm(live)configure# exit
]] ></ac:plain-text-body></ac:structured-macro></li>
<li><strong>Show running configuration</strong>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="a863556d-82f2-4700-b308-bcdfba7ee339"><ac:plain-text-body><![CDATA[
sudo crm configure show
]] ></ac:plain-text-body></ac:structured-macro></li>
</ol>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>At this point, you should be able to hit your service on your front-facing ipaddress port 443 and get a response from your service.</p></ac:rich-text-body></ac:macro></property>
hibernateVersion: 3
version: 10
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-08-30 09:01:43.000
versionComment: Migration of unmigrated content due to installation of a new plugin
originalVersion: 23495059
contentStatus: current
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">117408001</id>
<property name="hibernateVersion">3</property>
<property name="title">Adding a new service to our HAProxy load balancers</property>
<property name="lowerTitle">adding a new service to our haproxy load balancers</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">117440769</id>
</element>
</collection>
<property name="version">10</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-08-09 08:18:56.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-08-30 09:01:43.000</property>
<property name="versionComment">Migration of unmigrated content due to installation of a new plugin</property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23495059</id>
</property>
<property name="contentStatus">current</property>
<property name="position" />
</object>
ID: 117408039
Fecha creación: 2008-03-05 16:56:14.000
<property name="body"><ac:structured-macro ac:macro-id="ee8f5ec1-26b7-4536-8c96-8b2ae74ca296" ac:name="section" ac:schema-version="1"><ac:rich-text-body>
<ac:structured-macro ac:macro-id="4d25f1cb-65b3-4908-b435-2d6684f84e86" ac:name="column" ac:schema-version="1"><ac:parameter ac:name="width">50%</ac:parameter><ac:rich-text-body>
<ac:structured-macro ac:macro-id="cef12caa-0f75-428f-a923-69a9143decdc" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>Misc. Linux documentation. When we find something useful regarding Linux that we might use again, it should get documented here.</p></ac:rich-text-body></ac:structured-macro>
<p><ac:structured-macro ac:macro-id="ea7473a7-f7df-4503-afa8-82458a003a9d" ac:name="livesearch" ac:schema-version="1"><ac:parameter ac:name="spaceKey"><ri:space ri:space-key="linux" /></ac:parameter><ac:parameter ac:name="id">1</ac:parameter></ac:structured-macro></p>
</ac:rich-text-body></ac:structured-macro>
<ac:structured-macro ac:macro-id="52f18322-60be-4521-81e5-6f52811ba01d" ac:name="column" ac:schema-version="1"><ac:parameter ac:name="width">50%</ac:parameter><ac:rich-text-body>
<ac:structured-macro ac:macro-id="d74e1da8-bbf6-4b62-a824-a84bd5076a4b" ac:name="recently-updated" ac:schema-version="1" />
</ac:rich-text-body></ac:structured-macro>
</ac:rich-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-06-25 10:34:46.000
originalVersion: 2883631
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">117408039</id>
<property name="hibernateVersion">1</property>
<property name="title">Home</property>
<property name="lowerTitle">home</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">117440807</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">117473427</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">117473428</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-05 16:56:14.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-06-25 10:34:46.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883631</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388481
Fecha creación: 2013-11-07 13:40:18.691
<property name="body"><p>Be sure to remove any previously installed version:</p><ac:structured-macro ac:macro-id="668d062d-2687-407f-9d0e-a55f95e19db1" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#apt-get remove haproxy apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common
Next, create a directory /usr/share/haproxy
#mkdir -p /usr/share/haproxy]] ></ac:plain-text-body></ac:structured-macro><p>Next, install the following packages:</p><ac:structured-macro ac:macro-id="c19059f1-d572-4d8e-801d-bad819134471" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#apt-get install build-essential libssl-dev libpopt-dev libpcre3-dev socat]] ></ac:plain-text-body></ac:structured-macro><p>Make sure the following entries are in your /etc/sysctl.conf file:</p><ac:structured-macro ac:macro-id="9a62f2a4-df34-43ad-aa15-b03e1b21c8dd" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[net.ipv4.ip_nonlocal_bind=1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 1024 65023
net.ipv4.tcp_max_syn_backlog = 10240
net.ipv4.tcp_max_tw_buckets = 400000
net.ipv4.tcp_max_orphans = 60000
net.ipv4.tcp_synack_retries = 3
net.core.somaxconn = 10000]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>Copy the SSL certs from an existing working node in /etc/ssl/localcerts</p><p>&nbsp;</p><p>1- Extract a clean directory of latest haproxy dev release from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/devel/">http://haproxy.1wt.eu/download/1.5/src/devel/</a>)</p><ac:structured-macro ac:macro-id="547caa71-8b97-4e91-a2af-916e6a8b45c4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19.tar.gz]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">2- Extract a clean directory of latest patches from tar.gz file (download from&nbsp;<a href="http://haproxy.1wt.eu/download/1.5/src/snapshot/">http://haproxy.1wt.eu/download/1.5/src/snapshot/</a>)</span></p><ac:structured-macro ac:macro-id="1fca2111-4429-4321-9671-20cb53692faf" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#tar -zxf haproxy-1.5-dev19-patches-20131105.tar.gz]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><br />3- cd into the haproxy folder you extracted (not the patch directory)</p><ac:structured-macro ac:macro-id="4905cbe4-e075-46d3-976c-4a6ed93cf0a0" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#cd haproxy-1.5-dev19]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p><span style="background-color: transparent;line-height: 1.4285715;">4- Copy all patches from the patch directory into the haproxy directory</span></p><ac:structured-macro ac:macro-id="9777dd08-d064-4866-bb0c-8d93ebc19ff7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#cp ../haproxy-1.5-dev19-patches/20131105/*.diff .]] ></ac:plain-text-body></ac:structured-macro><p><br />5- Run the following command to patch up to latest level:</p><ac:structured-macro ac:macro-id="69a8fa7b-9ca0-478a-b3aa-730d1dcfe578" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[for x in `ls *.diff $1`; do patch -p1 <$x; done;]] ></ac:plain-text-body></ac:structured-macro><p><br /><span style="background-color: transparent;line-height: 1.4285715;">6- You should NOT receive any errors - if you do, fix them. You *should* just get a bunch of lines saying 'patching file &lt;whatever&gt;' with NO other output.</span></p><p>7- Remove all the diff files in your current directory</p><ac:structured-macro ac:macro-id="f7830057-c896-4ffa-9ffa-69ebea41c3e2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#rm 00*.diff]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>8- Run the following to compile the new build of HAProxy</p><ac:structured-macro ac:macro-id="27375dca-2981-4d43-bf3d-e05a9f01040a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[make TARGET=linux2628 USE_EPOLL=1 USE_OPENSSL=1 ARCH=x86_64 CPU=native USE_PCRE=1 USE_ZLIB=1]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>9- run the following to install it</p><ac:structured-macro ac:macro-id="6de55d12-b1ca-4ac6-9ae8-a798698f9158" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#make install]] ></ac:plain-text-body></ac:structured-macro><p>10- Link the new executable to the traditional location of haproxy</p><ac:structured-macro ac:macro-id="0a58261b-78b5-418e-bd00-7b311aead620" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ #ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy]] ></ac:plain-text-body></ac:structured-macro><p>11- Make a directory for haproxy to chroot to:</p><ac:structured-macro ac:macro-id="ba976bca-3c0f-4d34-b0fc-9aaf9f93f409" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#mkdir /usr/share/haproxy
Note: if you haven't already had haproxy installed, you'll need to create directory /etc/haproxy/errors and copy the default error files in from the haproxy build directory:
#cp ~/haproxy-1.5-dev19/examples/errorfiles/* /etc/haproxy/errors]] ></ac:plain-text-body></ac:structured-macro><p>12- Restart services</p><ac:structured-macro ac:macro-id="3864159c-4446-47bb-88bb-1099907d81c2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#service haproxy restart]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>As of November 12, 2013, we are using the development branch (1.5x) of haproxy, which terminates SSL on its own, without the need for Apache or any other piece. &nbsp;This config file WILL NOT WORK with versions prior to 1.5x. &nbsp;Our config looks like this:</p><ac:structured-macro ac:macro-id="6ce02417-a055-4d6a-973d-89f3fce79ec9" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 10000
chroot /usr/share/haproxy
stats socket /var/run/haproxy.stat mode 600 level operator
user haproxy
group haproxy
#debug
#quiet
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
maxconn 10000
contimeout 5000
clitimeout 600000
srvtimeout 600000
errorfile 503 /etc/haproxy/errors/503.http
listen admin:8001 :8001
mode http
stats uri /
peers stickypeers
peer halb3 134.250.12.144:9099
peer halb4 134.250.12.145:9099
frontend api
bind 134.250.12.141:80
bind 134.250.12.141:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal-api
backend portal-api
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /banner
server api1 134.250.5.24:8080 maxconn 5000 check
server api2 134.250.5.25:8080 maxconn 5000 check
frontend xe
bind 134.250.12.167:80
bind 134.250.12.167:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend banner-xe
backend banner-xe
stick-table type ip size 500k expire 8h peers stickypeers
stick on src
stick store-request src
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk GET /
server birchxe 134.250.8.19:8080 maxconn 5000 check
server maplexe 134.250.8.20:8080 maxconn 5000 check
frontend my
bind 134.250.12.8:80
bind 134.250.12.8:443 ssl crt /etc/ssl/localcerts/generic-combined.pem
mode http
option httpclose
option forwardfor
redirect scheme https if !{ ssl_fc }
default_backend portal
backend portal
mode http
option abortonclose
option httpclose
balance roundrobin
option httpchk
server portal1 134.250.8.3:80 check
server portal2 134.250.8.4:80 check
# server portal3 134.250.8.5:80 check
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-09-12 15:58:37.560
originalVersion: 31392092
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388481</id>
<property name="hibernateVersion">1</property>
<property name="title">Compiling newer versions of HAProxy</property>
<property name="lowerTitle">compiling newer versions of haproxy</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421249</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486786</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486785</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454017</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454018</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-11-07 13:40:18.691</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-09-12 15:58:37.560</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">31392092</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388482
Fecha creación: 2011-12-05 15:14:15.000
<property name="body"><h3>/etc/httpd/conf.d/ssl.conf</h3>
<ac:structured-macro ac:macro-id="98b5afdd-9c9f-4ea0-bca5-ef42db46274b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# SSL Cipher Suite:
# List the ciphers that the client is permitted to negotiate.
# See the mod_ssl documentation for a complete list.
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
# Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate. If
# the certificate is encrypted, then you will be prompted for a
# pass phrase. Note that a kill -HUP will prompt again. A new
# certificate can be generated using the genkey(1) command.
SSLCertificateFile /etc/pki/tls/certs/suucert.pem
# Server Private Key:
# If the key is not combined with the certificate, use this
# directive to point at the key file. Keep in mind that if
# you've both a RSA and a DSA private key you can configure
# both in parallel (to also allow the use of DSA ciphers, etc.)
SSLCertificateKeyFile /etc/pki/tls/private/suuprivate.key
# Server Certificate Chain:
# Point SSLCertificateChainFile at a file containing the
# concatenation of PEM encoded CA certificates which form the
# certificate chain for the server certificate. Alternatively
# the referenced file can be the same as SSLCertificateFile
# when the CA certificates are directly appended to the server
# certificate for convinience.
#SSLCertificateChainFile /etc/pki/tls/certs/
# Certificate Authority (CA):
# Set the CA certificate verification path where to find CA
# certificates for client authentication or alternatively one
# huge file containing all of them (file must be PEM encoded)
SSLCACertificateFile /etc/pki/tls/certs/RapidRoot.pem
]] ></ac:plain-text-body></ac:structured-macro>
<h3>/etc/httpd/conf/httpd.conf</h3>
<p>Be sure the following Trace directive exists in your global config section</p>
<ac:structured-macro ac:macro-id="772eb1c9-11b7-4f53-83f2-2a823f563b4b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#
TraceEnable off
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-12-05 15:40:54.000
originalVersion: 24346975
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388482</id>
<property name="hibernateVersion">1</property>
<property name="title">Apache2 configuration example</property>
<property name="lowerTitle">apache2 configuration example</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421250</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454024</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454025</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-12-05 15:14:15.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-12-05 15:40:54.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346975</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388483
Fecha creación: 2011-06-03 16:52:26.000
<property name="body"><h4>Current /etc/apt/mirror.list contents</h4>
<ac:structured-macro ac:macro-id="e502af34-96f4-4882-870c-b5b17ea9f48a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
############# config ##################
#
set base_path /home/itftp/APTMIRROR
#
# if you change the base path you must create the directories below with write privileges
#
set mirror_path $base_path/mirror
set skel_path $base_path/skel
set var_path $base_path/var
set cleanscript $base_path/var/clean.sh
set defaultarch i386
set nthreads 10
set _tilde 0
#
############# end config ##############
# Main packages for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-updates main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-updates main restricted universe multiverse
# Updates for hardy, jaunty, lucid, maverick
deb-i386 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu hardy-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu jaunty-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu lucid-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu maverick-security main restricted universe multiverse
deb-i386 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
deb-amd64 http://archive.ubuntu.com/ubuntu natty-security main restricted universe multiverse
# Security updates
deb-i386 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu hardy-security universe
deb-i386 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security universe
deb-amd64 http://security.ubuntu.com/ubuntu hardy-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-i386 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu jaunty-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu lucid-security universe
deb-i386 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security universe
deb-amd64 http://security.ubuntu.com/ubuntu lucid-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu maverick-security universe
deb-i386 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security universe
deb-amd64 http://security.ubuntu.com/ubuntu maverick-security multiverse
deb-i386 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-i386 http://security.ubuntu.com/ubuntu natty-security universe
deb-i386 http://security.ubuntu.com/ubuntu natty-security multiverse
deb-amd64 http://security.ubuntu.com/ubuntu natty-security main restricted
deb-amd64 http://security.ubuntu.com/ubuntu natty-security universe
deb-amd64 http://security.ubuntu.com/ubuntu natty-security multiverse
# Partner repo
deb-i386 http://archive.canonical.com/ubuntu hardy partner
deb-amd64 http://archive.canonical.com/ubuntu hardy partner
deb-i386 http://archive.canonical.com/ubuntu jaunty partner
deb-amd64 http://archive.canonical.com/ubuntu jaunty partner
deb-i386 http://archive.canonical.com/ubuntu lucid partner
deb-amd64 http://archive.canonical.com/ubuntu lucid partner
deb-i386 http://archive.canonical.com/ubuntu maverick partner
deb-amd64 http://archive.canonical.com/ubuntu maverick partner
deb-i386 http://archive.canonical.com/ubuntu natty partner
deb-amd64 http://archive.canonical.com/ubuntu natty partner
# Extras (added as of Maverick)
deb-i386 http://extras.ubuntu.com/ubuntu maverick main
deb-amd64 http://extras.ubuntu.com/ubuntu maverick main
deb-i386 http://extras.ubuntu.com/ubuntu natty main
deb-amd64 http://extras.ubuntu.com/ubuntu natty main
# Cleanup scripts
clean http://archive.ubuntu.com
clean http://security.ubuntu.com
clean http://archive.canonical.com
]] ></ac:plain-text-body></ac:structured-macro>
<h4>Current soft links in /var/www directory</h4>
<ac:structured-macro ac:macro-id="59053279-499e-484c-9d57-91cc1f88b91b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
root@sherpa:/var/www# ls -aslh
total 12K
4.0K drwxr-xr-x 2 root root 4.0K 2011-06-03 16:44 .
4.0K drwxr-xr-x 15 root root 4.0K 2011-06-02 16:58 ..
0 lrwxrwxrwx 1 root root 53 2011-06-03 16:44 extras -> /home/itftp/APTMIRROR/mirror/extras.ubuntu.com/ubuntu
4.0K -rw-r--r-- 1 root root 177 2011-06-02 16:58 index.html
0 lrwxrwxrwx 1 root root 54 2011-06-03 09:46 ubuntu -> /home/itftp/APTMIRROR/mirror/archive.ubuntu.com/ubuntu
0 lrwxrwxrwx 1 root root 57 2011-06-03 09:46 ubuntupartner -> /home/itftp/APTMIRROR/mirror/archive.canonical.com/ubuntu
0 lrwxrwxrwx 1 root root 55 2011-06-03 09:46 updates -> /home/itftp/APTMIRROR/mirror/security.ubuntu.com/ubuntu
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-06-03 16:56:21.000
originalVersion: 23494876
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388483</id>
<property name="hibernateVersion">1</property>
<property name="title">APT-MIRROR configuration</property>
<property name="lowerTitle">apt-mirror configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421251</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454032</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454033</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-06-03 16:52:26.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-06-03 16:56:21.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23494876</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388484
Fecha creación: 2011-11-14 08:27:51.000
<property name="body"><h1>Resizing Logical Volumes</h1>
<p>This is a continuation of my earlier post. Here I will explain how to resize an existing logical volume. Logical volumes may be resized dynamically while preserving the data on the volume. Here is how:</p>
<ol>
<li>Reducing a logical volume.</li>
<li>Reduce the filesystem residing on the logical volume.</li>
<li>Reduce the logical volume.</li>
</ol>
<p>For different file systems,it is achieved differently.</p>
<p>For ext2 filesystem<br />
If you are using LVM 1, then both the above steps could be acomplished by executing a single utility called e2fsadm.</p>
<ol>
<li>umount /data</li>
<li>e2fsadm -L -1G /dev/my_vol_grp/my_logical_vol</li>
<li>mount /data<br />
The above command first reduces the filesystem in the 'my_logical_vol'by 1 GB and then reduces themy_logical_vol itself by the same amount.<br />
If you are using LVM 2 - more recent linux distributions like Fedora use LVM 2 - then you do not have the'e2fsadm' utility. So you have to first reduce the filesystem using 'resize2fs' and then reduce the logical volume using 'lvreduce'.</li>
<li>umount /data</li>
<li>resize2fs /dev/my_vol_grp/my_logical_vol 1G</li>
<li>lvreduce -L 1G /dev/my_vol_grp/my_logical_vol</li>
<li>mount /data<br />
In the above case, I have reduced my file</li>
<li>Grow a Logical Volume<br />
The steps for growing a logical volume are the exact opposite of those for shrinking the logical volume.</li>
<li>Then resize the filesystem to the new size of your logical volume.</li>
</ol>
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-11-14 08:37:53.000
originalVersion: 24346864
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388484</id>
<property name="hibernateVersion">1</property>
<property name="title">Logical volume resize</property>
<property name="lowerTitle">logical volume resize</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421252</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454035</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454036</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-11-14 08:27:51.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-11-14 08:37:53.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24346864</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388485
Fecha creación: 2016-07-21 16:43:48.238
<property name="body"><p>Readme.md</p><ac:structured-macro ac:macro-id="c5835801-f3a8-4934-8d67-35f5719ce7d7" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[mysql2postgresql
================
Converter mysql schema and data to postgresql
Usage
1. Create dump in xml format using command: `mysqldump --xml -u USER_NAME DB_NAME > DUMP_FILE_NAME`
2. Run converter using command: `php converter.php -i DUMP_FILE_NAME -o PSQL_FILE_NAME`
Additional options
* `-b50` - set batch count (used on insert data). By default batch count = 200
* `-n` - non export structure
Restriction
This converter does not support foreign keys, because mysql does not return foreign key in xml dump
Also You must have installed locally php postgresql extension]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>converter.php</p><ac:structured-macro ac:macro-id="e605a09b-959a-4e92-8e43-6e2562f45733" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[<?php
/**
* Created by PhpStorm.
* User: mihailshumilov
* Date: 22.11.13
* Time: 09:30
*/
require( "Converter.class.php" );
$options = getopt( "i:o:b::n", array( "input-file:", "output-file:", "batch-count::" , "no-export-structure") );
$iFilePath = isset( $options["i"] ) ? $options["i"] : $options["input-file"];
$oFilePath = isset( $options["o"] ) ? $options["o"] : $options["output-file"];
$batchCount = isset( $options["b"] ) ? $options["b"] : ( isset( $options["batch-count"] ) ? $options["batch-count"] : false );
$exportStructure = isset( $options["n"] ) ? false : ( isset( $options["no-export-structure"] ) ? false : true );
$conv = new Convertor( array(
"iFileName" => $iFilePath,
"oFileName" => $oFilePath,
"batchCount" => $batchCount,
"exportStructure" => $exportStructure
) );
$conv->run();
exit( 0 );]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>Converter.class.php</p><ac:structured-macro ac:macro-id="b256680b-01a8-48ef-af9f-c0d95b7356ca" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[<?php
/**
* Created by PhpStorm.
* User: mihailshumilov
* Date: 23.02.14
* Time: 16:27
*/
class Convertor
{
private $iFileName;
private $oFileName;
private $exportStructure;
private $iFh;
private $oFh;
private $tableFields = array();
private $row = array();
private $lastTable = null;
private $lastRow = null;
private $tableData = false;
private $fieldOpen = false;
private $timestampType = "timestamp with time zone";
private $seq = false;
private $insertRowField = array();
private $maxBatchCount = 200;
private $batchCount = 0;
private $defaultWords = array(
'CURRENT_TIMESTAMP'
);
public function __construct( $params )
{
if (isset( $params['iFileName'] ) && ! empty( $params['iFileName'] )) {
$this->iFileName = $params['iFileName'];
} else {
throw new Exception( "Input file name not set" );
}
if (isset( $params['oFileName'] ) && ! empty( $params['oFileName'] )) {
$this->oFileName = $params['oFileName'];
} else {
throw new Exception( "Output file name not set" );
}
if (isset( $params['batchCount'] ) && $params['batchCount']) {
if (filter_var( $params['batchCount'], FILTER_VALIDATE_INT )) {
$this->maxBatchCount = $params['batchCount'];
} else {
throw new Exception( "Parameter `batchCount` must be positive integer" );
}
}
if (isset( $params['exportStructure'] )) {
$this->exportStructure = $params['exportStructure'];
} else {
throw new Exception( "Export database structure not set" );
}
$this->checkFiles();
}
private function checkFiles()
{
if (!file_exists( $this->iFileName )) {
throw new RuntimeException( "File `{$this->iFileName}` does not exists" );
}
if (!$this->iFh = @fopen( $this->iFileName, "r" )) {
throw new RuntimeException( "Can't open `{$this->iFileName}`" );
}
if (!$this->oFh = @fopen( $this->oFileName, "w+" )) {
throw new RuntimeException( "Can't open `{$this->oFileName}` to write" );
}
}
public function __destruct()
{
fclose( $this->iFh );
fclose( $this->oFh );
}
public function run()
{
$xml = xml_parser_create();
xml_set_element_handler( $xml, array( &$this, "start" ), array( &$this, "end" ) );
xml_set_character_data_handler( $xml, array( &$this, "data" ) );
xml_parser_set_option( $xml, XML_OPTION_CASE_FOLDING, false );
$totalFileSize = filesize( $this->iFileName );
$processed = 0;
echo "\nProcess:0%\r";
while ($data = fread( $this->iFh, 4096 )) {
xml_parse( $xml, $data, feof( $this->iFh ) ) or die( "Can't parse XML data" );
$processed += 4096;
$percentage = round( $processed / $totalFileSize * 100, 2 );
echo "Processed: {$percentage}%\r";
}
xml_parser_free( $xml );
echo "\r";
echo "Processed: 100%\n";
}
private function start( $parser, $name, $attrs )
{
switch ($name) {
case "table_structure":
$this->tableFields = array();
$this->tableFields['name'] = $attrs['name'];
break;
case "field":
if ($this->tableData) {
$this->row[$attrs['name']] = null;
$this->lastRow = $attrs['name'];
$this->fieldOpen = true;
} else {
$this->convert_field_data( $attrs );
}
break;
case "key":
$this->convert_key_data( $attrs );
break;
case "table_data":
$this->batchCount = 0;
$this->tableData = true;
$this->lastTable = $attrs['name'];
break;
case "row":
$this->row = array();
break;
case "options":
if (isset( $attrs['Auto_increment'] )) {
$this->setSeqValue( $attrs );
}
break;
}
}
private function end( $parser, $name )
{
switch ($name) {
case "table_structure":
if ($this->exportStructure) {
fwrite( $this->oFh, "\nDROP TABLE IF EXISTS \"{$this->tableFields['name']}\";\n" );
if (array_key_exists( "types", $this->tableFields )) {
foreach ($this->tableFields["types"] as $customTypeName => $customType) {
fwrite( $this->oFh, "DROP TYPE IF EXISTS \"" . trim($customTypeName,"\"") . "\";\n" );
fwrite( $this->oFh, "CREATE TYPE " . str_replace('""','"',$customType) . ";\n" );
}
}
fwrite( $this->oFh, "\nCREATE TABLE \"{$this->tableFields['name']}\" (\n" );
fwrite( $this->oFh, "\t" );
fwrite( $this->oFh, join( ",\n\t", $this->tableFields["fields"] ) );
if ( ! empty( $this->tableFields["primary"] )) {
fwrite(
$this->oFh,
",\n\t" . 'PRIMARY KEY ("' . join( '","', $this->tableFields["primary"] ) . '")' . "\n"
);
}
fwrite( $this->oFh, "\n);\n" );
if (array_key_exists( "key", $this->tableFields )) {
foreach ($this->tableFields["key"] as $keyName => $keyData) {
$indexName = $this->tableFields['name'] . "_" . $keyName;
fwrite(
$this->oFh,
"DROP INDEX IF EXISTS \"{$indexName}\";\n"
);
$fields = $keyData['fields'];
array_walk( $fields, function ( &$item, $key ) {
$item = "\"" . $item . "\"";
} );
fwrite(
$this->oFh,
"CREATE " . ( $keyData["uniq"] ? "UNIQUE " : "" ) . "INDEX \"" . $indexName . "\" ON \"{$this->tableFields['name']}\" (" . join(
",",
$fields
) . ");\n"
);
}
}
if ($this->seq) {
fwrite( $this->oFh, $this->seq );
$this->seq = false;
}
}
break;
case "table_data":
$this->tableData = false;
fwrite(
$this->oFh,
";\n"
);
$this->insertRowField = array();
break;
case "row":
array_walk( $this->row, function ( &$item, $key ) {
$item = pg_escape_string( $item );
} );
if (empty( $this->insertRowField ) || ( $this->maxBatchCount == $this->batchCount )) {
if ($this->maxBatchCount == $this->batchCount) {
fwrite(
$this->oFh,
";\n"
);
}
$this->batchCount = 0;
$this->insertRowField = $this->row;
fwrite(
$this->oFh,
"INSERT INTO \"{$this->lastTable}\" (\"" . join(
"\",\"",
array_keys( $this->insertRowField )
) . "\") VALUES \n"
);
} else {
fwrite(
$this->oFh, ",\n"
);
}
foreach ($this->row as $n=>&$v) {
if (( $v == '' ) && ( isset( $this->tableFields['null'] ) ) && ( $this->tableFields['null'][$n] === true )) {
$v = 'NULL';
} else {
$v = "'".$v."'";
}
}
unset($v);
fwrite(
$this->oFh,
"(" . implode(', ', $this->row). ")"
);
$this->batchCount ++;
break;
case "field":
if ($this->tableData) {
$this->fieldOpen = false;
}
break;
}
}
private function data( $parser, $data )
{
if ($this->tableData && $this->fieldOpen) {
if ("0000-00-00 00:00:00" == $data) {
$data = "1971-01-01 00:00:01";
}
$this->row[$this->lastRow] = ((isset($this->row[$this->lastRow])) ? $this->row[$this->lastRow] : '') . $data;
}
}
private function convert_field_data( $attrs )
{
if (isset( $attrs ) && ! empty( $attrs ) && isset( $attrs['Field'] )) {
//Set field name
$fieldStr = '"' . $attrs['Field'] . '"' . " ";
//Set field type
if ($attrs['Extra'] == "auto_increment") {
$fieldStr .= "serial ";
} elseif (substr( $attrs['Type'], 0, 3 ) == "int") {
$fieldStr .= "integer ";
} elseif (substr( $attrs['Type'], 0, 6 ) == "bigint") {
$fieldStr .= "bigint ";
} elseif (substr( $attrs['Type'], 0, 6 ) == "double") {
$fieldStr .= "money ";
} elseif (substr( $attrs['Type'], 0, 7 ) == "tinyint") {
$fieldStr .= "smallint ";
} elseif (substr( $attrs['Type'], 0, 8 ) == "smallint") {
$fieldStr .= "smallint ";
} elseif (substr( $attrs['Type'], 0, 5 ) == "float") {
$fieldStr .= "real ";
} elseif (substr( $attrs['Type'], 0, 7 ) == "decimal") {
$fieldStr .= "decimal ";
} elseif (substr( $attrs['Type'], 0, 4 ) == "blob") {
$fieldStr .= "bytea ";
} elseif (substr( $attrs['Type'], 0, 7 ) == "varchar") {
$fieldStr .= "text ";
} elseif (( $attrs['Type'] == "datetime" ) || ( $attrs['Type'] == "timestamp" )) {
$fieldStr .= "{$this->timestampType} ";
} elseif (( $attrs['Type'] == "mediumtext" ) || ( $attrs['Type'] == "tinytext" ) || ( $attrs['Type'] == "longtext" )
) {
$fieldStr .= "text ";
} elseif (substr( $attrs['Type'], 0, 4 ) == "enum") {
//Create custom type
$dataType = "\"" . $this->tableFields['name'] . "_enum_" . $attrs['Field'] . "\"";
$this->tableFields["types"][$dataType] = "\"" . $dataType . "\" as " . $attrs['Type'];
$fieldStr .= $dataType . " ";
} else {
$fieldStr .= $attrs['Type'] . " ";
}
//Set extra field
$null = true;
if ($attrs['Null'] == "NO") {
$fieldStr .= "NOT NULL ";
$null = false;
}
if (isset($attrs['Default'])) {
if($attrs['Default'] != "") {
//TODO: See more cases!
if(is_numeric($attrs['Default']) || in_array($attrs['Default'], $this->defaultWords)) {
$fieldStr .= " DEFAULT ".$attrs['Default'];
} else {
$fieldStr .= " DEFAULT '".$attrs['Default']."'";
}
}
}
$this->tableFields["fields"][] = $fieldStr;
$this->tableFields["null"][$attrs['Field']] = $null;
if ($attrs['Key'] == "PRI") {
$this->tableFields["primary"][] = $attrs['Field'];
}
}
}
private function convert_key_data( $attrs )
{
if ($attrs['Key_name'] != "PRIMARY") {
if ( ! array_key_exists( "key", $this->tableFields )) {
$this->tableFields["key"] = array();
}
$keyName = $attrs['Key_name'];
if ( ! array_key_exists( $keyName, $this->tableFields["key"] )) {
$this->tableFields["key"][$keyName] = array( "fields" => array(), "uniq" => false );
}
$this->tableFields["key"][$keyName]["fields"][] = $attrs['Column_name'];
if ($attrs['Non_unique'] == 0) {
$this->tableFields["key"][$keyName]["uniq"] = true;
}
}
}
private function setSeqValue( $attrs )
{
if (isset( $attrs['Auto_increment'] )) {
$this->seq = "SELECT setval('\"{$attrs['Name']}_{$this->tableFields["primary"][0]}_seq\"', {$attrs['Auto_increment']}, true);\n";
}
}
}]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-07-21 16:44:12.623
originalVersion: 42762294
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388485</id>
<property name="hibernateVersion">1</property>
<property name="title">MySQL Converter (convert MySQL to Postgres)</property>
<property name="lowerTitle">mysql converter (convert mysql to postgres)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421253</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454038</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454039</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2016-07-21 16:43:48.238</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-07-21 16:44:12.623</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">42762294</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388486
Fecha creación: 2009-08-03 11:13:33.000
<property name="body"><ol><li>Physically put the disk in the server&nbsp; or create a new virtual disk for the VM &nbsp;(add it to a NEW controller, i.e. scsi 1:0, 2:0, 3:0 and it will detect it without a reboot)</li><li>Find the identifier of the new disk by running 'dmesg |grep sd' at the command line. &nbsp;The newest one should be the last one in the list (i.e. sdb, sdc, etc.); use fdisk to create new partition on the disk.</li><li>Extend existing volume group onto new partition.</li><li>Extend existing logical volume onto new space.</li><li>Extend filesystem.</li></ol><p>For this example we are going to assume that our new disk that has been added to our server is /dev/sdc. We will also assume that we have a volume group named VolGroup00 and a logical volume on that volume group named BACKUP. Also in this example, /dev/mapper/VolGroup00-BACKUP is mounted on our Linux system as /backup. Let's get started.</p><ol><li>fdisk /dev/sdc</li><li>n</li><li>p</li><li>1 &lt;Enter&gt; &lt;Enter&gt; &nbsp;(twice)</li><li>t</li><li>8e</li><li>w</li><li>pvcreate /dev/sdc1</li><li>vgdisplay (to get volgroupname)</li><li>vgextend &lt;volgroupname&gt; /dev/sdc1</li><li>lvdisplay (to get name of logical volume you want to extend)</li><li>lvextend -L +10G /dev/mapper/&lt;lvname&gt; &nbsp;/dev/sdc1 &nbsp;(this will extend the volume by 10 gigabytes. &nbsp;If you want to use the whole disk, just take out the -L +10G part)</li><li>resize2fs /dev/mapper/&lt;lvname&gt;</li></ol><p>Done - verify new size</p><p>&nbsp;</p><p>&nbsp;</p><p>COMMAND-LINE OPTIONS:</p><p>fdisk /dev/xvdf</p><p>pvcreate /dev/xvdf1</p><p>vgcreate mvg /dev/xvdf1<br />lvcreate -L 8192M -n tmpvol mvg<br />lvcreate -L 8192M -n swapvol mvg<br />lvcreate -L 2048M -n homevol mvg<br />lvcreate -L 5G -n varvol mvg<br />pvdisplay (to get free PE)<br />lvcreate -l &lt;freePEval&gt; -n u01vol mvg<br />mkfs.ext4 /dev/mapper/mvg-u01vol</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-05-11 10:11:17.992
originalVersion: 13795381
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388486</id>
<property name="hibernateVersion">1</property>
<property name="title">How to add a disk to LVM</property>
<property name="lowerTitle">how to add a disk to lvm</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421254</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454041</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454042</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-03 11:13:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-05-11 10:11:17.992</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">13795381</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388487
Fecha creación: 2010-05-18 10:41:08.000
<property name="body"><p>Similar to Windows Software Update Services, apt-mirror allows us to store a local copy of the Ubuntu updates repository so our machines don't all have to go out to the internet for updates. &nbsp;Not only does this reduce our bandwidth usage, but updates are delivered extremely quickly over local wire. &nbsp;Here is an example of an /etc/apt/sources.list file from an Ubuntu 10.04 LTS 32-bit server install, pointed at our local repository on sherpa.suu.edu:</p>
<ac:structured-macro ac:macro-id="205f526b-6328-4a23-b218-240c9d744e72" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
deb http://sherpa.suu.edu/ubuntu/ lucid main restricted
## Major bug fix updates produced after the final release of the
## distribution.
deb http://sherpa.suu.edu/ubuntu/ lucid-updates main restricted
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://sherpa.suu.edu/ubuntu/ lucid universe
deb http://sherpa.suu.edu/ubuntu/ lucid-updates universe
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://sherpa.suu.edu/ubuntu/ lucid multiverse
deb http://sherpa.suu.edu/ubuntu/ lucid-updates multiverse
## Uncomment the following line to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://sherpa.suu.edu/ubuntupartner lucid partner
## Security Updates
deb http://sherpa.suu.edu/updates lucid-security main restricted
deb http://sherpa.suu.edu/updates lucid-security universe
deb http://sherpa.suu.edu/updates lucid-security multiverse
]] ></ac:plain-text-body></ac:structured-macro>
<p>NOTE: We do not currently mirror the deb-src (sources) files, since we rarely if ever compile our packages from source. Adding these sources to every subsection listed here would more than double the required space to store them. Your original sources.list file may or may not reference the source repositories. If it does, you should remove the lines from your file, or at least comment them out. If you need them, the only solution at this time is to leave them pointed at the original ubuntu location.</p>
<p>For reference, here is a standard unmodified sources.list from an 11.10 box:</p>
<ac:structured-macro ac:macro-id="24186098-63ea-43e2-a430-55a9759eff08" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
deb http://us.archive.ubuntu.com/ubuntu/ oneiric main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric main restricted
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates main restricted
deb http://us.archive.ubuntu.com/ubuntu/ oneiric universe
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric universe
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates universe
deb http://us.archive.ubuntu.com/ubuntu/ oneiric multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric multiverse
deb http://us.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ oneiric-updates multiverse
# deb http://us.archive.ubuntu.com/ubuntu/ maverick-backports main restricted universe multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ maverick-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu oneiric partner
deb-src http://archive.canonical.com/ubuntu oneiric partner
deb http://extras.ubuntu.com/ubuntu oneiric main
deb-src http://extras.ubuntu.com/ubuntu oneiric main
deb http://security.ubuntu.com/ubuntu oneiric-security main restricted
deb-src http://security.ubuntu.com/ubuntu oneiric-security main restricted
deb http://security.ubuntu.com/ubuntu oneiric-security universe
deb-src http://security.ubuntu.com/ubuntu oneiric-security universe
deb http://security.ubuntu.com/ubuntu oneiric-security multiverse
deb-src http://security.ubuntu.com/ubuntu oneiric-security multiverse
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-11-07 10:37:37.000
originalVersion: 17858700
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388487</id>
<property name="hibernateVersion">1</property>
<property name="title">Ubuntu local updates repository (example sources.list)</property>
<property name="lowerTitle">ubuntu local updates repository (example sources.list)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421255</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454044</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454045</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-05-18 10:41:08.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-11-07 10:37:37.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858700</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388488
Fecha creación: 2008-04-10 10:56:11.000
<property name="body"><h4>The latest client for Windows and Linux can be found at ftp://archive.suu.edu/clients</h4><h2>Example contents of dsm.opt file and dsm.sys for Ubuntu</h2><ac:structured-macro ac:macro-id="16b70af6-809b-4b29-a505-0a94b35d0c72" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[DSM.OPT:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client User Options file for UNIX (dsm.opt.smp) *
************************************************************************
* This file contains an option you can use to specify the TSM
* server to contact if more than one is defined in your client
* system options file (dsm.sys). Copy dsm.opt.smp to dsm.opt.
* If you enter a server name for the option below, remove the
* leading asterisk (*).
************************************************************************
* SErvername A server name defined in the dsm.sys file
SErvername tsm
DSM.SYS:
************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tsm
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tsm.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:structured-macro><h2>Configuring Automatic Startup</h2><p>Create a file called suu_tivoli in the /etc/init.d directory, and place the following contents in it:</p><ac:structured-macro ac:macro-id="461cf114-8996-4419-86ea-c935309d59ea" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#!/bin/bash
# description: Starts the IBM Tivoli backup daemons
# chkconfig: 2345 99 00
export TIVBASE=/opt/tivoli/tsm/client/ba/bin;
export PATH=$PATH:$TIVBASE;
export DSM_DIR=$TIVBASE;
export DSM_CONFIG=$TIVBASE;
export DSM_LOG=$TIVBASE;
#export LANG=en_US;
#export LC_ALL=en_US;
case "$1" in
start)
if [ -f "/var/lock/subsys/tivoli" ]; then
printf "\nTivoli dsmcad has already been loaded\n\n"
exit 2
fi
$TIVBASE/dsmcad
ps -C dsmcad -o pid= > /var/lock/subsys/tivoli
;;
stop)
for i in `ps -C dsmcad -o pid=`; do
kill $i
done
if [ -f "/var/lock/subsys/tivoli" ]; then
rm -f /var/lock/subsys/tivoli
fi
;;
*)
echo "Usage: `basename $0` {start | stop}"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:structured-macro><h4>Next, execute the following commands:</h4><ac:structured-macro ac:macro-id="cdeb93bb-ad7d-4f79-ba37-14e8872c7e76" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[FOR UBUNTU SERVER:
chmod 775 suu_tivoli
update-rc.d suu_tivoli defaults
FOR RED HAT:
chmod 755 suu_tivoli
chkconfig --add suu_tivoli
chkconfig --level 345 suu_tivoli on
]] ></ac:plain-text-body></ac:structured-macro><h4>Next, register a new node on the tsm server (only for traditional backups, NOT full VMs)</h4><ac:structured-macro ac:macro-id="4a0e1641-96ae-4ea4-a9d5-d757949301ab" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[register node <nodename> <password> passe=0 do=standard url=http://<host.suu.edu>:1581 clo={windows|linux}]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h4>Then, configure the schedule via the GUI at&nbsp;<a href="https://tsm.suu.edu:16311/ibm/console">https://tsm.suu.edu:16311/ibm/console</a></h4><h4>Finally, you must start the daemon manually and enter the password; this is only required once- it will remember it going forward</h4><p>At this point, it is assumed you have talked to Matt and set up a login and password for your server. Run the following commands to initialize and run a backup:</p><ac:structured-macro ac:macro-id="42d6da81-c537-4c52-be52-7ee5f993549d" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#dsmc
It will prompt you for your nodename and password. Once you have entered them, it will drop you at a tsm> prompt.
You can then type 'backup', no quotes, and it will start an incremental backup. If you don't want to start one right away,
just type 'quit', no quotes, and it will drop you back at the linux prompt.
To start the daemon, run the following command:
#/etc/init.d/suu_tivoli start
]] ></ac:plain-text-body></ac:structured-macro><h2>Occasionally, the Tivoli upgrade process will break links to existing libraries; here's how to fix it.</h2><h4>Error loading shared libraries</h4><p>If you encounter the following message while starting dsmc</p><ac:structured-macro ac:macro-id="617f50f1-f035-4ff9-9af5-416e537b9985" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[dsmc: error while loading shared libraries: libgpfs.so: cannot open shared object file: No such file or directory
]] ></ac:plain-text-body></ac:structured-macro><p>you need to add the path to the dsm binary directory to the file <em>/etc/ld.so.conf</em></p><ac:structured-macro ac:macro-id="40d082cf-4250-4421-b6e2-c1ff9c9b473a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[/opt/tivoli/tsm/client/api/bin
/usr/local/ibm/gsk8/lib
]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;and then reimport the shared objects using the command</p><ac:structured-macro ac:macro-id="da01ebc5-b519-4327-bc08-2d961fe898c1" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ldconfig
]] ></ac:plain-text-body></ac:structured-macro><h4>English message repository not found</h4><p>If you get the error message</p><ac:structured-macro ac:macro-id="2c527580-eeac-49a4-b908-233b10340bd2" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ANS0101E Unable to open English message repository 'dsmclientV3.cat'.
]] ></ac:plain-text-body></ac:structured-macro><p>you need to create a symbolic link in <em>/opt/tivoli/tsm/client/ba/bin</em> with</p><ac:structured-macro ac:macro-id="d7ba152f-1cad-4f01-830a-49cc1b4d10e8" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[cd /opt/tivoli/tsm/client/ba/bin
ln -s ../../lang/EN_US/
]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>&nbsp;</p><h3>Resetting encryption password:</h3><ac:structured-macro ac:macro-id="a85a5909-5144-4b00-89d8-009e8321b707" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[If you ever accidentally enter the wrong encryption key on initial setup, you can have it re-prompt you by doing the following:
# service suu_tivoli stop
# rm /etc/adsm/TSM.PWD
# service suu_tivoli start
# dsmc s /etc/inittab (or any other small file)
You will be prompted for nodename, and then node password. Once you've logged in, it will prompt you about the Encryption Key, at which point you select 1, and enter the key twice. If the backup completes successfully, you can move on to creating a full backup.]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2015-07-29 09:43:54.025
originalVersion: 3637384
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388488</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tivoli on Linux</property>
<property name="lowerTitle">configuring tivoli on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421256</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486787</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454047</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454048</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 10:56:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2015-07-29 09:43:54.025</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637384</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388489
Fecha creación: 2011-09-13 10:22:20.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>Documentation for managing a firewall on an Ubuntu box.</p></ac:rich-text-body></ac:macro>
<h2>Overview</h2>
<p>One of the simplest ways to manage a firewall on Ubuntu is to use the command <strong><code>ufw</code></strong>. It stands for &quot;uncomplicated firewall&quot; and it is installed by default. The firewall is not running by default though.</p>
<h2>Initial Setup</h2>
<p><strong>Set default policy to deny</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="5d24a6d8-898f-4352-859b-169b551bd847"><ac:plain-text-body><![CDATA[
sudo ufw default deny
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Turn on the firewall</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="c282e371-0262-4fed-a7f5-6f071da5bc7b"><ac:plain-text-body><![CDATA[
sudo ufw enable
]] ></ac:plain-text-body></ac:structured-macro>
<h2>Some sample rules</h2>
<p><strong>Allow a specific IP address on any port.</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="d6e8c6b5-66e2-4767-a3bd-0de29e20072e"><ac:plain-text-body><![CDATA[
sudo ufw allow from 134.250.4.188
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Allow a subnet range to a specific port</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="7ebe3701-13eb-4671-98f5-a9dce23ec231"><ac:plain-text-body><![CDATA[
# This allows ssh access from the VPN subnet.
sudo ufw allow from 134.250.236.0/24 to any port 22
]] ></ac:plain-text-body></ac:structured-macro>
<p><strong>Block a specific IP</strong></p>
<ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="61c5b54b-ff47-49eb-8fb5-62d1fa0164b3"><ac:plain-text-body><![CDATA[
sudo ufw deny 134.250.4.77
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2011-09-13 10:23:21.000
originalVersion: 23888007
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388489</id>
<property name="hibernateVersion">1</property>
<property name="title">Ubuntu Firewall - UFW</property>
<property name="lowerTitle">ubuntu firewall - ufw</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421257</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454050</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454051</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2011-09-13 10:22:20.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2011-09-13 10:23:21.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23888007</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388490
Fecha creación: 2008-07-03 12:45:33.000
<property name="body"><ac:structured-macro ac:macro-id="f255400c-9f2d-4828-8d0c-dbc73880aaf9" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body><p>PostgreSQL is an open source database. This document is a collection of notes for postgresql administrators.</p></ac:rich-text-body></ac:structured-macro><h3>Enabling remote connections to a postgresql database</h3><p>$POSTGRES_HOME will be something like <code>/etc/postgresql/8.3/main</code></p><ac:structured-macro ac:macro-id="5dd4de3d-e03e-4350-94c7-6ddf1351a7f8" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[cd $POSTGRES_HOME
sudo vim postgresql.conf
]] ></ac:plain-text-body></ac:structured-macro><p>Find the line</p><ac:structured-macro ac:macro-id="50b62112-30f4-4285-916f-ceab2333ddb3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#listen_address = 'localhost']] ></ac:plain-text-body></ac:structured-macro><p>and change it to</p><ac:structured-macro ac:macro-id="c8313202-df34-48ae-a34e-79955a943e9b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[listen_address = '*']] ></ac:plain-text-body></ac:structured-macro><h1>Theater Manager Database Upgrade Procedure</h1><p>On April 19, 2016, we were asked to upgrade the Theatre Manager Postgresql instance from 9.3 (the latest in the Ubuntu repos) to 9.5. &nbsp;Here are the steps we took: (from&nbsp;<a href="http://no0p.github.io/postgresql/2014/03/29/upgrading-pg-ubuntu.html">http://no0p.github.io/postgresql/2014/03/29/upgrading-pg-ubuntu.html</a>)</p><p>&nbsp;</p><p style="text-align: justify;">For more core concepts take a look at&nbsp;<a href="http://www.postgresql.org/docs/9.3/static/pgupgrade.html">the official documentation for pg_upgrade</a>&nbsp;tool.</p><h2 style="text-align: justify;">Installing 9.5 alongside 9.3</h2><p style="text-align: justify;">First we install 9.5 from the&nbsp;<a href="https://wiki.postgresql.org/wiki/Apt">postgres apt repos</a>.</p><pre><code>echo &quot;deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main&quot; &gt;
/etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc
| sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install postgresql-9.5 postgresql-contrib-9.5</code></pre><p style="text-align: justify;">We note that the debian packages will start the 9.5 server and configure it to run on a port other than the port 9.3 is running on, likely 5433.</p><p style="text-align: justify;">At this point, install any shared libraries which your 9.3 database has installed and are required for&nbsp;<code>CREATE EXTENSION</code>&nbsp;commands to complete successfully. For example, if your 9.3 system uses postGIS, install postGIS packages for the 9.5 system. Identifying all extensions can be a laborious process since the pg_extension catalog table is scoped to the current database connection. Nonetheless it is absolutely necessary since the upgrade will fail without properly installed libraries.</p><h2 style="text-align: justify;">Ensuring permissions</h2><p style="text-align: justify;">To execute pg_upgrade the&nbsp;<strong>postgres</strong>&nbsp;user will need to be able to connect to both databases. The databases will not be running on their normal ports for the upgrade, so it is somewhat safer to make less secure updates to pg_hba.conf. An entry like the following rule is pretty reasonable:</p><pre><code>local all postgres peer</code></pre><p style="text-align: justify;">Depending on your tolerance for farkling with pg_hba.conf you could also change all entries to trust.</p><h2 style="text-align: justify;">Shutdown</h2><p style="text-align: justify;">Neither database should be online during the upgrade process, as that could lead to an inconsistent copy.</p><pre><code>sudo service postgresql stop 9.5
sudo service postgresql stop 9.3</code></pre><p style="text-align: justify;">Great service is down.</p><h2 style="text-align: justify;">Executing the upgrade, quickly</h2><p style="text-align: justify;">When executed pg_upgrade starts both servers on an alternative port, runs some sanity checks, and performs the necessary conversion and copy routines. It&rsquo;s simple to run:</p><pre><code>sudo su postgres
/usr/lib/postgresql/9.5/bin/pg_upgrade -b /usr/lib/postgresql/9.3/bin/
-B /usr/lib/postgresql/9.5/bin/
-d /var/lib/postgresql/9.3/main
-D /var/lib/postgresql/9.5/main
-o ' -c config_file=/etc/postgresql/9.3/main/postgresql.conf'
-O ' -c config_file=/etc/postgresql/9.5/main/postgresql.conf'</code></pre><p style="text-align: justify;">Note that the command references the full path of the pg_upgrade binary. It&rsquo;s important to use the binary for the target version.</p><p style="text-align: justify;">If this command prints an error message see the section below titled Don&rsquo;t Panic.</p><h2 style="text-align: justify;">Starting the new server</h2><p style="text-align: justify;">Now update the configuration in&nbsp;<code>/etc/postgresql/9.5/main/postgresql.conf</code>. Don&rsquo;t copy the old file as it will contain old data and config directory directives. This is a great opportunity to review your GUCs.</p><p style="text-align: justify;">Key updates are the&nbsp;<code>listen_address</code>&nbsp;and&nbsp;<code>port</code>&nbsp;directives. Then start the server carefully remembering the version suffix.</p><pre><code> sudo service postgresql start 9.5</code></pre><p style="text-align: justify;">You should now be able to restart all services which rely on the database and verify everything is working as expected.</p><h2 style="text-align: justify;">Cleaning up</h2><p style="text-align: justify;">Once satisified simply remove the 9.3 installation.</p><pre><code> sudo apt-get remove postgresql-9.3</code></pre><p style="text-align: justify;">You may choose to purge the package as well eventually.</p><h2 style="text-align: justify;">Don&rsquo;t panic</h2><p style="text-align: justify;">Depending on your configuration, there is a chance that the pg_upgrade command will fail (safely). If this happens you have the option to just restart the old server and take a break.</p><pre><code>sudo service postgresql start 9.3</code></pre><p style="text-align: justify;">And take a moment to re-evaluate.</p><p style="text-align: justify;">If you forgot about a 1TB tablespace on a rotating drive, it is okay to send an interrupt to pg_upgrade as long as you wipe the target database to a fresh install state.</p><h2 style="text-align: justify;">Final Remarks</h2><p style="text-align: justify;">This post covers a very basic upgrade process which allows for a downtime maintenance window. Its focus is on ease of safely completing the upgrade rather than minimizing downtime. There are pg_upgrade options you should be aware of such as direct linking the data files, which can save the time required to copy a potentially large database. Of course this is slightly more dangerous as it limits opportunities for backing out.</p><p style="text-align: justify;">Good luck!</p><p>&nbsp;</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2016-04-19 11:24:36.928
originalVersion: 6226006
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388490</id>
<property name="hibernateVersion">1</property>
<property name="title">PostgreSQL</property>
<property name="lowerTitle">postgresql</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421258</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486790</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486789</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486788</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454053</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454054</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-07-03 12:45:33.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2016-04-19 11:24:36.928</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">6226006</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388491
Fecha creación: 2008-03-06 15:37:40.000
<property name="body"><h2>First Step</h2><h5>If IP is assigned by DHCP, make sure /etc/hosts file looks like this:</h5><ac:structured-macro ac:macro-id="0ed5ac2d-595b-46ad-85c4-bcaf839a435b" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 servername.suu.edu localhost.localdomain localhost servername]] ></ac:plain-text-body></ac:structured-macro><h5>If IP is hard-coded, make sure /etc/hosts file looks like this (x.x is your new IP):</h5><ac:structured-macro ac:macro-id="8b6fdc65-ea3d-49ad-ba14-5229ca47a324" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">/etc/hosts</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[Red Hat:
127.0.0.1 localhost.localdomain localhost
134.250.x.x yourserver.suu.edu yourserver
Ubuntu:
127.0.0.1 localhost
127.0.1.1 yourserver
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
]] ></ac:plain-text-body></ac:structured-macro><h2>UBUNTU Step - populate /etc/hostname with short hostname</h2><ac:structured-macro ac:macro-id="d0b618dc-7740-485c-bfcd-674c630897be" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[yourserver]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Second Step</h2><h5>If you need the change to happen immediately without a reboot, run the following command as root:</h5><ac:structured-macro ac:macro-id="b9b0a424-edd9-4ace-a06c-3260d5bffe5f" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#hostname yourserver.suu.edu
]] ></ac:plain-text-body></ac:structured-macro><h2>Third Step</h2><h5>This step is optional, and depends on the linux distribution and version you are using. If you have an /etc/HOSTNAME file, ensure that it is populated with a single line as follows:</h5><ac:structured-macro ac:macro-id="82e6c63c-c07b-4172-b2be-d7715b9438c7" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[yourserver.suu.edu
]] ></ac:plain-text-body></ac:structured-macro><h2>Fourth Step</h2><h5>Edit the /etc/sysconfig/network file HOSTNAME line to read:</h5><ac:structured-macro ac:macro-id="b8f89b25-1558-4906-9c4f-1b416b722c7a" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">/etc/sysconfig/network</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[HOSTNAME=yourserver.suu.edu
]] ></ac:plain-text-body></ac:structured-macro><h2>Fifth Step</h2><h5>As root, run the following command:</h5><ac:structured-macro ac:macro-id="d6b78a7c-5c76-450d-96ce-52c4ae561cf4" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[#echo yourserver.suu.edu > /proc/sys/kernel/hostname
To verify that it worked, run:
#cat /proc/sys/kernel/hostname
]] ></ac:plain-text-body></ac:structured-macro><h2>Sixth Step</h2><h5>Red Hat - Edit the /etc/sysconfig/network-scripts/ifcfg-eth0 file</h5><ac:structured-macro ac:macro-id="4918652a-99a5-4a04-9b59-d1ac59a8dff1" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[DEVICE=eth0
BOOTPROTO=static (or dhcp)
ONBOOT=yes
HWADDR=[MAC Address]
NETMASK=255.255.255.0
IPADDR=[YOURIP]
GATEWAY=[YOURGW]
Type=Ethernet]] ></ac:plain-text-body></ac:structured-macro><h5>Ubuntu - Edit the /etc/network/interfaces (also /etc/network/networks with proper localnet)</h5><ac:structured-macro ac:macro-id="dccb5a2d-e822-45f3-b614-93728beebe38" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 134.250.x.x
netmask 255.255.255.0
network 134.250.x.0
broadcast 134.250.x.255
gateway 134.250.x.1
dns-nameservers 134.250.2.3 134.250.6.3
dns-search suu.edu]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><h2>Finally, reboot.</h2></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2014-07-18 10:22:48.816
originalVersion: 2883645
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388491</id>
<property name="hibernateVersion">1</property>
<property name="title">How to properly change host name and ip address</property>
<property name="lowerTitle">how to properly change host name and ip address</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421259</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454056</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454057</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-06 15:37:40.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2014-07-18 10:22:48.816</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883645</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388492
Fecha creación: 2008-04-10 17:02:47.000
<property name="body"><h3>Bash Template for Oracle/Crystal server on Linux:</h3>
<ac:structured-macro ac:macro-id="46fbaff9-42ea-4305-8082-0cf9808b40f5" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
CRYSTALDIR=/usr/local/CE10/crystal; export CRYSTALDIR
# User specific environment and startup programs
TOM=/usr/jakarta-tomcat-5.0.28; export TOM
JAVA_HOME=/usr/java/j2sdk1.4.2_05; export JAVA_HOME
CATALINA_HOME=/usr/jakarta-tomcat-5.0.28; export CATALINA_HOME
TWO_TASK=DEV; export TWO_TASK
LD_ASSUME_KERNEL=2.4.1; export LD_ASSUME_KERNEL
ORACLE_BASE=/opt/oracle; export ORACLE_BASE
ORACLE_HOME=/opt/oracle/product/9.2.0; export ORACLE_HOME
ORACLE_SID=DEV; export ORACLE_SID
ORACLE_OWNER=oracle; export ORACLE_OWNER
SH_LIB_PATH=$ORACLE_HOME/lib; export SH_LIB_PATH
TNS_ADMIN=$ORACLE_HOME/network/admin; export TNS_ADMIN
ORACLE_TERM=xterm; export ORACLE_TERM
CLASSPATH=/opt/oracle/product/9.2.0/jdbc/lib/classes111.zip:/usr/local/CE10/crystal/enterprise/java/applications/cewcanative.jar; export CLASSPATH
NLS_LANG=AMERICAN; export NLS_LANG
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib; export LD_LIBRARY_PATH
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin:/usr/java/j2sdk1.4.2_05/bin
#BASEDIR=$TOM; export BASEDIR
export PATH
unset USERNAME
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-10 17:02:49.000
originalVersion: 3637395
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388492</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuration Notes for Business Objects or Crystal Reports on Linux</property>
<property name="lowerTitle">configuration notes for business objects or crystal reports on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421260</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454059</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454060</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 17:02:47.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-10 17:02:49.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637395</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388493
Fecha creación: 2010-04-20 09:06:58.000
<property name="body"><p>1. Add the following line to the bottom of your /etc/apt/sources.list file:</p>
<ac:structured-macro ac:macro-id="64968a8c-633d-4c5c-a4b8-d5c68ddf3b58" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
deb http://download.virtualbox.org/virtualbox/debian] karmic non-free
]] ></ac:plain-text-body></ac:structured-macro>
<p>2. Import the key:</p>
<ac:structured-macro ac:macro-id="c5504df9-bc65-41b1-a296-63dac6b977d4" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -
]] ></ac:plain-text-body></ac:structured-macro>
<p>Refresh the repositories:</p>
<ac:structured-macro ac:macro-id="2f400169-ff3b-40e0-901e-075fff746655" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
sudo apt-get update
]] ></ac:plain-text-body></ac:structured-macro>
<p>3. Install the latest virtualbox package (as of this writing it is virtualbox-3.1) by selecting it in Synaptic, or running this command from a terminal:</p>
<ac:structured-macro ac:macro-id="1722a9ac-f5ab-4824-b2c7-8a868b755c78" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ sudo apt-get install virtualbox-3.1
]] ></ac:plain-text-body></ac:structured-macro>
<p>4. Add yourself to the vboxusers group:</p>
<ac:structured-macro ac:macro-id="387ecade-26cf-45ae-a030-810e563d8f18" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ sudo gpasswd -a YOURUSERNAME vboxusers
]] ></ac:plain-text-body></ac:structured-macro>
<p>5. Find the devgid for the vboxusers group:</p>
<ac:structured-macro ac:macro-id="0c61c2ef-b72d-42fa-9e52-cbacef727075" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ grep vboxusers /etc/group
]] ></ac:plain-text-body></ac:structured-macro>
<p>It will return something like:</p>
<ac:structured-macro ac:macro-id="fd589180-ec16-4ae5-bd15-cfcdb3ddc52c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
vboxusers:x:121:username
]] ></ac:plain-text-body></ac:structured-macro>
<p>Add this line to the bottom of /etc/fstab, replacing the devgid number with your devgid:</p>
<ac:structured-macro ac:macro-id="dc6aa3fa-af67-41d5-9fb5-9af50bd3c2ce" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
none /proc/bus/usb usbfs devgid=125,devmode=664 0 0
]] ></ac:plain-text-body></ac:structured-macro>
<p>After you reboot you should now have USB support in VirtualBox.</p>
<p>Last tested on Ubuntu 9.10 Karmic Koala</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-20 09:08:41.000
originalVersion: 17858608
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388493</id>
<property name="hibernateVersion">1</property>
<property name="title">Virtualbox and USB device support in Ubuntu Karmic Koala</property>
<property name="lowerTitle">virtualbox and usb device support in ubuntu karmic koala</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421261</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454062</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454063</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-20 09:06:58.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-20 09:08:41.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858608</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388494
Fecha creación: 2011-04-04 15:52:05.000
<property name="body"><h4>/&lt;tomcat_home&gt;/conf/Catalina/localhost/manager.xml</h4>
<ac:structured-macro ac:macro-id="9ea25fab-b81b-403a-972b-10071903b1b9" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0?
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!--
Context configuration file for the Tomcat Manager Web App
$Id: manager.xml 562814 2007-08-05 03:52:04Z markt $
-->
<Context docBase="${catalina.home}/webapps/manager" privileged="true" antiResourceLocking="false" antiJARLocking="false">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,134.250.4.*"/>
</Context>
]] ></ac:plain-text-body></ac:structured-macro>
<h4>/&lt;tomcat_home&gt;/conf/server.xml</h4>
<ac:structured-macro ac:macro-id="041d869e-1840-4aa7-8e18-34b92b65dab8" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
<?xml version='1.0' encoding='utf-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- Note: A "Server" is not itself a "Container", so you may not
define subcomponents such as "Valves" at this level.
Documentation at /docs/config/server.html
-->
<Server port="8005" shutdown="SHUTDOWN">
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
<Listener className="org.apache.catalina.core.JasperListener" />
<!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<!-- Global JNDI resources
Documentation at /docs/jndi-resources-howto.html
-->
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- A "Service" is a collection of one or more "Connectors" that share
a single "Container" Note: A "Service" is not itself a "Container",
so you may not define subcomponents such as "Valves" at this level.
Documentation at /docs/config/service.html
-->
<Service name="Catalina">
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<!--
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="150" minSpareThreads="4"/>
-->
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<!-- <Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> -->
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- Define a SSL HTTP/1.1 Connector on port 8443
This connector uses the JSSE configuration, when using APR, the
connector should be using the OpenSSL style configuration
described in the APR documentation -->
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11Protocol"
ciphers="SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA"
SSLEnabled="true"
enableLookups="false"
disableUploadTimeout="true"
acceptCount="100"
maxThreads="200"
scheme="https"
secure="true"
clientAuth="false"
keystoreFile="/home/touchnet/ssl/keystore.wc"
keystorePass="<removedforwiki>"
sslProtocol="TLS"
/>
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host).
Documentation at /docs/config/engine.html -->
<!-- You should set jvmRoute to support load-balancing via AJP ie :
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
-->
<Engine name="Catalina" defaultHost="localhost">
<!--For clustering, please take a look at documentation at:
/docs/cluster-howto.html (simple how to)
/docs/config/cluster.html (reference documentation) -->
<!--
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
<!-- The request dumper valve dumps useful debugging information about
the request and response data received and sent by Tomcat.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.RequestDumperValve"/>
-->
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase" digest="SHA" />
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
</Host>
</Engine>
</Service>
</Server>
]] ></ac:plain-text-body></ac:structured-macro>
<h4>/&lt;tomcat_home&gt;/conf/logging.properties</h4>
<ac:structured-macro ac:macro-id="4737066f-71ed-4521-af71-08b10ac21359" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################
1catalina.org.apache.juli.FileHandler.level = WARNING
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.
2localhost.org.apache.juli.FileHandler.level = WARNING
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.
3manager.org.apache.juli.FileHandler.level = WARNING
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix = manager.
4host-manager.org.apache.juli.FileHandler.level = WARNING
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.FileHandler.prefix = host-manager.
java.util.logging.ConsoleHandler.level = WARNING
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = WARNING
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler
# For example, set the com.xyz.foo logger to only log SEVERE
# messages:
#org.apache.catalina.startup.ContextConfig.level = WARNING
#org.apache.catalina.startup.HostConfig.level = WARNING
#org.apache.catalina.session.ManagerBase.level = WARNING
#org.apache.catalina.core.AprLifecycleListener.level=WARNING
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2011-04-08 09:54:36.000
originalVersion: 23068743
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388494</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat configuration files - SUU Standard</property>
<property name="lowerTitle">tomcat configuration files - suu standard</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421262</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454065</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454066</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-04-04 15:52:05.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2011-04-08 09:54:36.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">23068743</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388495
Fecha creación: 2009-06-19 09:04:03.000
<property name="body"><ac:macro ac:name="suu-info"><ac:rich-text-body>
<p>A place to collect Tomcat documentation.</p></ac:rich-text-body></ac:macro>
<h2>Tomcat Documentation</h2>
<ac:macro ac:name="suu-tip"><ac:rich-text-body>
<p>The following list is a collection of Tomcat documentation from all over our wiki. Anything with the label &quot;tomcat&quot; will show up in this list.</p></ac:rich-text-body></ac:macro>
<ac:structured-macro ac:name="contentbylabel" ac:schema-version="3" ac:macro-id="a3fd06db-7e68-401b-932d-bc3d2a0d6a39"><ac:parameter ac:name="labels">tomcat</ac:parameter><ac:parameter ac:name="cql">label = &quot;tomcat&quot;</ac:parameter></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2009-06-19 09:04:07.000
originalVersion: 12681451
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388495</id>
<property name="hibernateVersion">1</property>
<property name="title">Tomcat</property>
<property name="lowerTitle">tomcat</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421263</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454068</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454069</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2009-06-19 09:04:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2009-06-19 09:04:07.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681451</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388496
Fecha creación: 2008-04-14 09:05:54.000
<property name="body"><p>SQUID INSTALLATION:<br />
Sent subscribe request to squid-users-subscribe@squid-cache.org</p>
<p>#Fix open files limit - added the following to /etc/security/limits.conf</p>
<p>squid soft nofile 4096<br />
squid hard nofile 63536</p>
<p>#Added the following line to /usr/include/bits/types.h file:<br />
#define _ _FD_SETSIZE 8192</p>
<p>#Ran the following as root; these will need to be executed before squid start; we will<br />
stick them in the rc.d script:<br />
ulimit -Hn 8192<br />
echo &quot;1024 61000&quot; &gt; /proc/sys/net/ipv4/ip_local_port_range</p>
<p>Configure command:<br />
./configure --prefix=/usr/local/squid --localstatedir=/squidcache/var --sysconfdir=/etc --enable-useragent-log --enable-icmp --enable-delay-pools --enable-htcp<br />
--enable-referer-log --enable-snmp --enable-cachemgr-hostname=squidcache.suu.edu --enable-ssl --with-openssl=/usr/local/ssl --enable-cache-digests --disable-http-violations</p>
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-14 09:05:55.000
originalVersion: 4063236
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388496</id>
<property name="hibernateVersion">1</property>
<property name="title">Configure Squid</property>
<property name="lowerTitle">configure squid</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421264</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454071</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454072</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 09:05:54.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-14 09:05:55.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063236</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388497
Fecha creación: 2008-03-07 16:22:44.000
<property name="body"><p>This document pertains to Redhat Enterprise Linux specifically, but may work for other distributions as well</p>
<h3>1- Install VNC Server</h3>
<p>#up2date vnc-server</p>
<h3>2- Set it to start at boot</h3>
<p>#chkconfig vncserver on</p>
<h3>3- Set up servers for individual users</h3>
<p>#vi /etc/sysconfig/vncservers<br />
(insert the following lines into the file)<br />
VNCSERVERS=&quot;1:usera 2:userb&quot; (add as many users as desired)<br />
VNCSERVERARGS<ac:link><ri:page ri:content-title="1" /></ac:link>=&quot;-geometry 1280x1024&quot; (set resolution you desire for user a)<br />
VNCSERVERARGS<ac:link><ri:page ri:content-title="2" /></ac:link>=&quot;-geometry 1024x768&quot; (set resolution you desire for user b)</p>
<h3>4- Initialize VNC params for each user</h3>
<p>#vncpasswd usera (enter password)<br />
#vncpasswd userb (enter password)</p>
<h3>5- Restart services</h3>
<p>#/etc/init.d/vncserver restart</p>
<h3>6- Edit each user's X startup script for VNC</h3>
<p>#vi /home/usera/.vnc/xstartup<br />
(the file should look like the following for full gui capability; for slow connections, there are much 'slimmer' options; this doc assumes local LAN connectivity)</p>
<h4># The file should look like this for a normal desktop:</h4>
<ac:structured-macro ac:macro-id="2217fd81-2e98-4e8e-8025-350322a48c39" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">/home/username/.vnc/xstartup</ac:parameter><ac:parameter ac:name="borderStyle">solid</ac:parameter><ac:plain-text-body><![CDATA[
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
The file should look like this if you have a slow connection:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &
]] ></ac:plain-text-body></ac:structured-macro>
<h3>7- Restart services again</h3>
<p>#/etc/init.d/vncserver restart</p>
<h3>8- Connect with client from remote desktop</h3>
<p>using the free RealVNC client, simply enter the following into the hostname prompt:<br />
your.server.edu:1 (the :1 denotes user 'a' in this case; substitute other numbers accordingly)</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2d0007
lastModificationDate: 2008-03-12 09:50:46.000
originalVersion: 2883664
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388497</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring VNC</property>
<property name="lowerTitle">configuring vnc</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421265</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486792</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486791</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454074</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454075</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:22:44.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2d0007</id>
</property>
<property name="lastModificationDate">2008-03-12 09:50:46.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883664</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388498
Fecha creación: 2008-04-10 11:13:24.000
<property name="body"><p>CUPS Doc<br />
To install cups and hplip on a new server, here is the procedure:</p>
<p>CUPS:<br />
1- ensure you have the following packages installed:<br />
gcc, libjpeg, libjpeg-devel, libpng, libpng-devel, libtiff, libtiff-devel, zlib, zlib-devel,dbus-devel,php-devel,pyqt,pyqt-devel,xsane,net-snmp-devel</p>
<p>2- Download the latest stable source from www.cups.org (1.3.6 as of this writing)</p>
<p>3- Compile the source as follows:</p>
<ac:structured-macro ac:macro-id="b06961e8-28ff-4c79-b6fb-de1ac73ee21b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
rpmbuild -ta cups-version-source.tar.gz --without dbus
]] ></ac:plain-text-body></ac:structured-macro>
<p>This will produce several compiled rpms in the /usr/src/redhat/RPMS/i386 directory.<br />
The only ones you want are cups, cups-libs, cups-debuginfo, cups-devel,cups-lpd,cups-php<br />
Do an rpm -Uvh on all these packages.</p>
<p>HPLIP:</p>
<ac:structured-macro ac:macro-id="4a2b5564-4c8d-4788-bea5-214bcc2e6eca" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#tar -zxvf hplip-****.gz
#cd hplip-****
#(as banjobs, not ROOT) ./configure --enable-network-build --disable-dbus-build --disable-pp-build --disable-fax-build --disable-gui-build --disable-scan-build --enable-doc-build --enable-foomatic-ppd-install --disable-foomatic-drv-install --with-hpppddir=/usr/share/cups/model/HP --disable-hpijs-only-build --prefix=/usr
#(as banjobs, not ROOT) make
#(as ROOT) make install
#/etc/init.d/hplip restart
]] ></ac:plain-text-body></ac:structured-macro>
<p>The following command creates a print queue called tranb on Solaris<br />
lpadmin -p tranb -v/dev/null -m netstandard -o dest=134.250.51.248:3002 -T PS -I postscript -o protocol=tcp</p>
<p>--landscape using LPR</p>
<p>lpr -o landscape -o cpi=15 -o lpi=12 -o cpi=16 -Pormond SHRTRTC_876.lis</p>
<p>Cups Options:</p>
<p>Jobs can also have options associated with them such as media size, number of copies, and priority.<br />
CUPS supports collections of printers known as classes. Jobs sent to a class are forwarded to the first available printer in the class.<br />
Filters allow a user or application to print many types of files without extra effort. Print jobs sent to a CUPS server are filtered before sending them to a printer.<br />
Some filters convert job files to different formats that the printer can understand. Others perform page selection and ordering tasks.</p>
<p>CUPS provides filters for printing many types of image files, HP-GL/2 files, PDF files, and text files.<br />
CUPS also supplies PostScript and image file Raster Image Processor (&quot;RIP&quot;) filters that convert PostScript or image files into bitmaps that can be sent to a raster printer.</p>
<p>CUPS also provides implicit classes, which are collections of printers and/or classes with the same name. This allows you to setup multiple servers pointing to the same physical network printer,<br />
for example, so that you aren't relying on a single system for printing. Because this also works with printer classes, you can setup multiple servers and printers<br />
and never worry about a single point of failure unless all of the printers and servers go down!</p>
<p>General Options</p>
<p>The following options apply when printing all types of files.<br />
Selecting the Media Size, Type, and Source</p>
<p>The -o media=xyz option sets the media size, type, and/or source:</p>
<p>lp -o media=Letter filename ENTER<br />
lp -o media=Letter,MultiPurpose filename ENTER<br />
lpr -o media=Letter,Transparency filename ENTER<br />
lpr -o media=Letter,MultiPurpose,Transparency filename ENTER</p>
<p>The available media sizes, types, and sources depend on the printer, but most support the following options (case is not significant):</p>
<ul>
<li>Letter - US Letter (8.5x11 inches, or 216x279mm)</li>
<li>Legal - US Legal (8.5x14 inches, or 216x356mm)</li>
<li>A4 - ISO A4 (8.27x11.69 inches, or 210x297mm)</li>
<li>COM10 - US #10 Envelope (9.5x4.125 inches, or 241x105mm)</li>
<li>DL - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)</li>
<li>Transparency - Transparency media type or source</li>
<li>Upper - Upper paper tray</li>
<li>Lower - Lower paper tray</li>
<li>MultiPurpose - Multi-purpose paper tray</li>
<li>LargeCapacity - Large capacity paper tray</li>
</ul>
<p>The actual options supported are defined in the printer's PPD file in the PageSize, InputSlot, and MediaType options.<br />
Setting the Orientation</p>
<p>The -o landscape option will rotate the page 90 degrees to print in landscape orientation:</p>
<p>lp -o landscape filename ENTER<br />
lpr -o landscape filename ENTER</p>
<p>Printing On Both Sides of the Paper</p>
<p>The -o sides=two-sided-short-edge and -o sides=two-sided-long-edge options will enable duplexing on the printer, if the printer supports it. The -o sides=two-sided-short-edge option is suitable for landscape pages, while the -o sides=two-sided-long-edge option is suitable for portrait pages:</p>
<p>lp -o sides=two-sided-short-edge filename ENTER<br />
lp -o sides=two-sided-long-edge filename ENTER<br />
lpr -o sides=two-sided-long-edge filename ENTER</p>
<p>The default is to print single-sided:</p>
<p>lp -o sides=one-sided filename ENTER<br />
lpr -o sides=one-sided filename ENTER</p>
<p>Banner Options</p>
<p>The following options apply when printing all types of files.<br />
Selecting the Banner Page(s)</p>
<p>The -o jobsheets=start,end option sets the banner page(s) to use for a job:</p>
<p>lp -o job-sheets=none filename ENTER<br />
lp -o job-sheets=standard filename ENTER<br />
lpr -o job-sheets=classified,classified filename ENTER</p>
<p>If only one banner file is specified, it will be printed before the files in the job. If a second banner file is specified, it is printed after the files in the job.</p>
<p>The available banner pages depend on the local system configuration; CUPS includes the following banner files:</p>
<ul>
<li>none - Do not produce a banner page.</li>
<li>classified - A banner page with a &quot;classified&quot; label at the top and bottom.</li>
<li>confidential - A banner page with a &quot;confidential&quot; label at the top and bottom.</li>
<li>secret - A banner page with a &quot;secret&quot; label at the top and bottom.</li>
<li>standard - A banner page with no label at the top and bottom.</li>
<li>topsecret - A banner page with a &quot;top secret&quot; label at the top and bottom.</li>
<li>unclassified - A banner page with an &quot;unclassified&quot; label at the top and bottom.</li>
</ul>
<p>Document Options</p>
<p>The following options apply when printing all types of files.<br />
Selecting a Range of Pages</p>
<p>The -o page-ranges=pages option selects a range of pages for printing:</p>
<p>lp -o page-ranges=1 filename ENTER<br />
lp -o page-ranges=1-4 filename ENTER<br />
lp -o page-ranges=1-4,7,9-12 filename ENTER<br />
lpr -o page-ranges=1-4,7,9-12 filename ENTER</p>
<p>As shown above, the pages value can be a single page, a range of pages, or a collection of page numbers and ranges separated by commas. The pages will always be printed in ascending order, regardless of the order of the pages in the page-ranges option.</p>
<p>The default is to print all pages.<br />
Selecting Even or Odd Pages</p>
<p>Use the -o page-set=set option to select the even or odd pages:</p>
<p>lp -o page-set=odd filename ENTER<br />
lp -o page-set=even filename ENTER<br />
lpr -o page-set=even filename ENTER</p>
<p>The default is to print all pages.<br />
Setting the Output Order</p>
<p>The the -o outputorder=order option to set the output order of all pages:</p>
<p>lp -o outputorder=normal filename ENTER<br />
lp -o outputorder=reverse filename ENTER<br />
lpr -o outputorder=reverse filename ENTER</p>
<p>N-Up Printing</p>
<p>The -o number-up=value option selects N-Up printing. N-Up printing places multiple document pages on a single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is 1-Up:</p>
<p>lp -o number-up=1 filename ENTER<br />
lp -o number-up=2 filename ENTER<br />
lp -o number-up=4 filename ENTER<br />
lpr -o number-up=16 filename ENTER</p>
<p>The -o page-border=value option chooses the border to draw around each page:</p>
<ul>
<li>-o page-border=double; draw two hairline borders around each page</li>
<li>-o page-border=double-thick; draw two 1pt borders around each page</li>
<li>-o page-border=none; do not draw a border (default)</li>
<li>-o page-border=single; draw one hairline border around each page</li>
<li>-o page-border=single-thick; draw one 1pt border around each page</li>
</ul>
<p>The -o number-up-layout=value option chooses the layout of the pages on each output page:</p>
<ul>
<li>-o number-up-layout=btlr; Bottom to top, left to right</li>
<li>-o number-up-layout=btrl; Bottom to top, right to left</li>
<li>-o number-up-layout=lrbt; Left to right, bottom to top</li>
<li>-o number-up-layout=lrtb; Left to right, top to bottom (default)</li>
<li>-o number-up-layout=rlbt; Right to left, bottom to top</li>
<li>-o number-up-layout=rltb; Right to left, top to bottom</li>
<li>-o number-up-layout=tblr; Top to bottom, left to right</li>
<li>-o number-up-layout=tbrl; Top to bottom, right to left</li>
</ul>
<p>Mirroring Prints</p>
<p>You can mirror a print using the -o mirror option:</p>
<p>lp -o mirror filename ENTER<br />
lpr -o mirror filename ENTER</p>
<p>This is useful for printing mirrored pages on transfer paper, for T shirts, mugs, etc.<br />
Setting the Brightness</p>
<p>You can control the overall brightness of the printed output using the -o brightness=percent option:</p>
<p>lp -o brightness=120 filename ENTER<br />
lpr -o brightness=120 filename ENTER</p>
<p>Values greater than 100 will lighten the print, while values less than 100 will darken it.<br />
Setting the Gamma Correction</p>
<p>You can control the overall gamma correction of the printed output using the -o gamma=value option:</p>
<p>lp -o gamma=1700 filename ENTER<br />
lpr -o gamma=1700 filename ENTER</p>
<p>Values greater than 1000 will lighten the print, while values less than 1000 will darken it. The default gamma is 1000.<br />
Text Options</p>
<p>The following options apply when printing text files.<br />
Setting the Number of Characters Per Inch</p>
<p>The -o cpi=value option sets the number of characters per inch:</p>
<p>lp -o cpi=10 filename ENTER<br />
lp -o cpi=12 filename ENTER<br />
lpr -o cpi=17 filename ENTER</p>
<p>The default characters per inch is 10.<br />
Setting the Number of Lines Per Inch</p>
<p>The -o lpi=value option sets the number of lines per inch:</p>
<p>lp -o lpi=6 filename ENTER<br />
lpr -o lpi=8 filename ENTER</p>
<p>The default lines per inch is 6.<br />
Setting the Number of Columns</p>
<p>The -o columns=value option sets the number of text columns:</p>
<p>lp -o columns=2 filename ENTER<br />
lpr -o columns=3 filename ENTER</p>
<p>The default number of columns is 1.<br />
Setting the Page Margins</p>
<p>Normally the page margins are set to the hard limits of the printer. Use the -o page-left=value, -o page-right=value , -o page-top=value, and -o page-bottom=value options to adjust the page margins:</p>
<p>lp -o page-left=value filename ENTER<br />
lp -o page-right=value filename ENTER<br />
lp -o page-top=value filename ENTER<br />
lp -o page-bottom=value filename ENTER<br />
lpr -o page-bottom=value filename ENTER</p>
<p>The value argument is the margin in points; each point is 1/72 inch or 0.35mm.<br />
Pretty Printing</p>
<p>The -o prettyprint option puts a header at the top of each page with the page number, job title (usually the filename), and the date. Also, C and C++ keywords are highlighted, and comment lines are italicized:</p>
<p>lp -o prettyprint filename ENTER<br />
lpr -o prettyprint filename ENTER</p>
<p>Image Options</p>
<p>The following options apply when printing image files.<br />
Positioning the Image</p>
<p>The -o position=name option specifies the position of the image on the page:</p>
<ul>
<li>center - Center the image on the page (default)</li>
<li>top - Print the image centered at the top of the page</li>
<li>left - Print the image centered on the left of page</li>
<li>right - Print the image centered on the right of the page</li>
<li>top-left - Print the image at the top left corner of the page</li>
<li>top-right - Print the image at the top right corner of the page</li>
<li>bottom - Print the image centered at the bottom of the page</li>
<li>bottom-left - Print the image at the bottom left corner of the page</li>
<li>bottom-right - Print the image at the bottom right corner of the page</li>
</ul>
<p>Scaling the Image</p>
<p>The -o scaling=percent, -o ppi=value, and -o natural-scaling=percent options change the size of a printed image:</p>
<p>lp -o scaling=percent filename ENTER<br />
lp -o ppi=value filename ENTER<br />
lpr -o natural-scaling=percent filename ENTER</p>
<p>The scaling=percent value is a number from 1 to 800 specifying the size in relation to the page (not the image.) A scaling of 100 percent will fill the page as completely as the image aspect ratio allows. A scaling of 200 percent will print on up to 4 pages.</p>
<p>The ppi=value value is a number from 1 to 1200 specifying the resolution of the image in pixels per inch. An image that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch, for example. If the specified resolution makes the image larger than the page, multiple pages will be printed to satisfy the request.</p>
<p>The natural-scaling=percent value is a number from 1 to 800 specifying the size in relation to the natural image size. A scaling of 100 percent will print the image at its natural size, while a scaling of 50 percent will print the image at half its natural size. If the specified scaling makes the image larger than the page, multiple pages will be printed to satisfy the request.<br />
Adjusting the Hue (Tint) of an Image</p>
<p>The -o hue=value option will adjust the hue of the printed image, much like the tint control on your television:</p>
<p>lp -o hue=value filename ENTER<br />
lpr -o hue=value filename ENTER</p>
<p>The value argument is a number from -360 to 360 and represents the color hue rotation. The following table summarizes the change you'll see with different colors:<br />
Original hue=-45 hue=45<br />
Red Purple Yellow-orange<br />
Green Yellow-green Blue-green<br />
Yellow Orange Green-yellow<br />
Blue Sky-blue Purple<br />
Magenta Indigo Crimson<br />
Cyan Blue-green Light-navy-blue</p>
<p>The default hue adjustment is 0.<br />
Adjusting the Saturation (Color) of an Image</p>
<p>The -o saturation=percent option adjusts the saturation of the colors in an image, much like the color knob on your television:</p>
<p>lp -o saturation=percent filename ENTER<br />
lpr -o saturation=percent filename ENTER</p>
<p>The percent argument specifies the color saturation from 0 to 200. A color saturation of 0 produces a black-and-white print, while a value of 200 will make the colors extremely intense.</p>
<p>The default saturation is 100.<br />
HP-GL/2 Options</p>
<p>The following options apply to HP-GL/2 files.<br />
Printing in Black</p>
<p>The -o blackplot option specifies that all pens should plot in black:</p>
<p>lp -o blackplot filename ENTER<br />
lpr -o blackplot filename ENTER</p>
<p>The default is to use the colors defined in the plot file or the standard pen colors defined in the HP-GL/2 reference manual from Hewlett Packard.<br />
Fitting the Plot on the Page</p>
<p>The -o fitplot option specifies that the plot should be scaled to fit on the page:</p>
<p>lp -o fitplot filename ENTER<br />
lpr -o fitplot filename ENTER</p>
<p>The default is to use the absolute distances specified in the plot file.<br />
NOTE:</p>
<p>This feature depends upon an accurate plot size (PS) command in the HP-GL/2 file. If no plot size is given in the file than the HP-GL/2 filter assumes the plot is ANSI E size.</p>
<p>Setting the Default Pen Width</p>
<p>The -o penwidth=value option specifies the default pen width for HP-GL/2 files:</p>
<p>lp -o penwidth=value filename ENTER<br />
lpr -o penwidth=value filename ENTER</p>
<p>The pen width value specifies the pen width in micrometers. The default value of 1000 produces lines that are 1 millimeter in width. Specifying a pen width of 0 produces lines that are exactly 1 pixel wide.<br />
NOTE:</p>
<p>This option is ignored when the pen widths are set in the plot file.</p>
<p>Raw or Unfiltered Output</p>
<p>The -o raw option allows you to send files directly to a printer without filtering. This is sometimes required when printing from applications that provide their own &quot;printer drivers&quot; for your printer:</p>
<p>lp -o raw filename ENTER<br />
lpr -o raw filename ENTER</p>
<p>The -l option can also be used with the lpr command to send files directly to a printer:</p>
<p>lpr -l filename ENTER</p>
<p>4 - Saving Printer Options and Defaults</p>
<p>This chapter describes how to save printer options for your printer and set your own default printer.<br />
Printer Options</p>
<p>Each printer supports a large number of options, which you learned about in Chapter 3, &quot;Standard Printer Options&quot;. Rather than specifying these options each time you print a file, CUPS allows you to save them as &quot;default&quot; options for the printer.</p>
<p>The lpoptions(1) command saves the options for your printers. Like the lp and lpr commands, it accepts printer options using the -o argument:</p>
<p>lpoptions -o prettyprint ENTER<br />
lpoptions -o media=A4 -o sides=two-sided-long-edge ENTER<br />
lpoptions -o media=Legal -o scaling=100 ENTER</p>
<p>Once saved, any lp or lpr command will use them when you print.<br />
Note:</p>
<p>Running the lpoptions command as the root user (or any user with a UID of 0) will set the default options for all users. The root account does not have its own set of default options.</p>
<p>Setting Options for a Specific Printer</p>
<p>The previous example shows how to set the options for the default printer. The -p printer option specifies the options are for another printer:</p>
<p>lpoptions -p laserjet -o prettyprint ENTER<br />
lpoptions -p laserjet -o media=A4 -o sides=two-sided-long-edge ENTER<br />
lpoptions -p deskjet -o media=Legal -o scaling=100 ENTER</p>
<p>Removing Options</p>
<p>The previous two examples shows how to set options for the default and a specific printer. Below, shows you how to remove the saved option using the -r argument:</p>
<p>lpoptions -r prettyprint ENTER<br />
lpoptions -p laserjet -r prettyprint ENTER</p>
<p>Viewing the Current Defaults</p>
<p>The lpoptions command can also be used to show the current options by not specifying any new options on the command-line:</p>
<p>lpoptions ENTER<br />
media=A4 sides=two-sided-long-edge<br />
lpoptions -p deskjet ENTER<br />
media=Legal scaling=100</p>
<p>Viewing Options for a Specific Printer</p>
<p>You can display the supported options using the lpoptions command with the -l option, as follows:</p>
<p>lpoptions -p laserjet -l ENTER</p>
<p>Setting the Default Printer</p>
<p>The administrator normally will set a system-wide default printer that is normally used as the default printer by everyone. Use the -d printer option to set your own default printer:</p>
<p>lpoptions -d deskjet ENTER</p>
<p>The printer can be local (deskjet) or remote ( deskjet@server).<br />
Printer Instances</p>
<p>Besides setting options for each print queue, CUPS supports printer instances which allow you to define several different sets of options for each printer. You specify a printer instance using the slash <ac:emoticon ac:name="tick" /> character:</p>
<p>lpoptions -p laserjet/duplex -o sides=two-sided-long-edge ENTER<br />
lpoptions -p laserjet/legal -o media=Legal ENTER</p>
<p>The lp and lpr commands also understand this notation:</p>
<p>lp -d laserjet/duplex filename ENTER<br />
lpr -P laserjet/legal filename ENTER</p>
<p>Removing Instances</p>
<p>Use the -x printer/instance option to remove a printer instance that you no longer need:</p>
<p>lpoptions -x laserjet ENTER<br />
lpoptions -x laserjet/duplex ENTER<br />
lpoptions -x laserjet/legal ENTER</p>
<p>The -x option only removes the default options for that printer and instance; the original print queue will remain until deleted with the lpadmin(8) command by the administrator.</p>
<ol>
<li>Allow printing to printer MyLaserJet from</li>
<li>itself and computers 192.10.2.5 and 192.10.2.6<br />
&lt;Location /printers/MyLaserJet&gt;<br />
...<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.1<br />
Allow from 192.10.2.5<br />
Allow from 192.10.2.6<br />
&lt;/Location&gt;</li>
</ol>
<ol>
<li>Allow printing to printer MyLaserJet from</li>
<li>itself and all computers on subnet 192.10.2.x<br />
&lt;Location /printers/MyLaserJet&gt;<br />
...<br />
Order deny,allow<br />
Deny from all<br />
Allow from 127.0.0.1<br />
Allow from 192.10.2.0/255.255.255.0<br />
&lt;/Location&gt;</li>
</ol>
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-07-21 16:20:14.000
originalVersion: 3637388
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388498</id>
<property name="hibernateVersion">1</property>
<property name="title">CUPS Reference</property>
<property name="lowerTitle">cups reference</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421266</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454077</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454078</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-10 11:13:24.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-07-21 16:20:14.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">3637388</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388499
Fecha creación: 2008-03-07 16:37:30.000
<property name="body"><h3>Provided by Jeff Johnson:</h3>
<p>No single tool, but here's what I do:</p>
<p>0) Make a copy of everything, just in case:<br />
cd /var/lib<br />
tar czvf /tmp/rpmdb.tar.gz rpm</p>
<p>1) Check /var/lib/rpm/Packages with db_verify.<br />
The command is<br />
db_verify /var/lib/rpm/Packages<br />
If that fails, the fix is<br />
cd /var/lib/rpm<br />
mv Packages Packages-ORIG<br />
db_dump Packages-ORIG | db_load Packages<br />
At this point Packages should be OK.</p>
<p>2) Read all Package headers.<br />
The command is<br />
rpm -qa<br />
If that &quot;works&quot;, go to step 5), do &quot;rpm --rebuilddb&quot; and you're<br />
done.<br />
If that segfaults, go to 3).<br />
if that hangs, then do<br />
rm -f /var/lib/rpm/__db*<br />
and try again.</p>
<p>3) You have a segfault on a header.<br />
The first step is to get the segfaulting header instance.<br />
Append &quot;debug&quot; to the Packages configuration by<br />
echo &quot;%_dbi_config_Packages %{_dbi_htconfig} lockdbfd debug&quot; \<br />
&gt;&gt; /etc/rpm/macros</p>
<p> Try &quot;rpm -qa&quot;, lots of boring glop until segfault.</p>
<p> On the screen will be something like</p>
<p> ...<br />
Get Packages key (0x8216580,4) data (0x4014f008,155244) &quot;#612&quot; 47000000<br />
rc<br />
0kernel-enterprise-2.4.9-26beta.17<br />
Get Packages key ((nil),0) data ((nil),0) &quot;&quot; deadbeef rc -30990<br />
&lt;segfault here&gt;</p>
<p> The 2nd to last &quot;Get Packages&quot; line is what you want, the<br />
bad header instance above is &quot;612&quot; in decimal. Note the<br />
package name-version-release, you'll want to reinstall<br />
that package somewhen.</p>
<p>4) Nuke the bad header.<br />
I usually whip out my handy-dandy header instance deleter,<br />
edit the bad record into the source, compile, run, and go back<br />
to step 2).</p>
<p> The program is at<br />
<a class="external-link" href="ftp://people.redhat.com/jbj/t38454.c" rel="nofollow">ftp://people.redhat.com/jbj/t38454.c</a><br />
FWIW, the program is named after the bugzilla report that<br />
caused me to write it.</p>
<p> Retrieve, and edit the bad header instances into<br />
...</p>
<ac:structured-macro ac:macro-id="f67baad4-bff4-4158-8215-c4fbcee72f88" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[ int badrecs[] = {
--> EDIT --> 562, 566, 559, 561, 563, 560, 564,
-1
};
...
Compile with
cc -o t38454 t38454.c -ldb-3.2
Run as
t38454 ]] ></ac:plain-text-body></ac:structured-macro>
<p> Go back to step 2).</p>
<p>5) Clean up.<br />
a) rpm --rebuilddb<br />
b) rm -f /etc/rpm/macros<br />
c) rm -rf /var/lib/rpmrebuild*<br />
d) Reinstall the deleted package.</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-07 16:37:32.000
originalVersion: 2883680
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388499</id>
<property name="hibernateVersion">1</property>
<property name="title">Fix Corrupt RPM Database</property>
<property name="lowerTitle">fix corrupt rpm database</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421267</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486793</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454080</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454081</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:37:30.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-07 16:37:32.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883680</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388500
Fecha creación: 2008-04-14 08:59:59.000
<property name="body"><h2>This document assumes you have the ncpmount, ncp, ncplogin, ncpmap, and ncpumount utilities installed on your machine</h2>
<ac:structured-macro ac:macro-id="b757535c-ac42-4b39-a20d-57db97d03e25" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
ncpmount -S cl01-adusers-server -A 134.250.12.107 -U username.it.administration.suu -V adusers/IT/Yourdir /dir/where/youwantitmountedonlocalfilesystem
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-04-14 09:00:01.000
originalVersion: 4063234
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388500</id>
<property name="hibernateVersion">1</property>
<property name="title">Mapping Netware Drives under Linux</property>
<property name="lowerTitle">mapping netware drives under linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421268</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454083</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454084</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-04-14 08:59:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-04-14 09:00:01.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4063234</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388501
Fecha creación: 2008-03-05 16:59:25.000
<property name="body"><p>Sometimes, you have an ISO you've downloaded which you would like to access in linux, but don't want to go to the hassle of burning it. The following command will allow you to mount it and read from it just like a CD:</p>
<p>mount -o loop <em>filename</em>.iso /mnt/<em>yourdirectory</em></p>
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-05 16:59:26.000
originalVersion: 2883633
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388501</id>
<property name="hibernateVersion">1</property>
<property name="title">Mount an ISO like a regular CDROM</property>
<property name="lowerTitle">mount an iso like a regular cdrom</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421269</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454086</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454087</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-05 16:59:25.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-05 16:59:26.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883633</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388502
Fecha creación: 2011-01-31 09:34:59.000
<property name="body"><h3>Server-side config files</h3><h5>/etc/services</h5><p>Append the following lines to the end of the file:</p><ac:structured-macro ac:macro-id="c01c70c1-3dd6-45f9-840e-c0cf66349a18" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[# Local services
rquotad 4003/tcp
rquotad 4003/udp
]] ></ac:plain-text-body></ac:structured-macro><h5>/etc/exports</h5><ac:structured-macro ac:macro-id="38d9c3cf-d3f0-41e5-aaf5-1e0c70e7e200" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[/usr/local/jobout 134.250.7.110(rw,sync) 134.250.7.111(rw,sync)
]] ></ac:plain-text-body></ac:structured-macro><h5>/etc/sysconfig/nfs</h5><ac:structured-macro ac:macro-id="3da0d68e-4667-4eed-894d-96052926023d" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V1="no"
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=4003
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=4001
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=4001
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=4002
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=4001
# Outgoing port statd should used. The default is port
# is random
STATD_OUTGOING_PORT=4004
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS="-vvv"
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS="-vvv"
# Don't load security modules in to the kernel
#SECURE_NFS_MODS="noload"
#
# Don't load sunrpc module.
#RPCMTAB="noload"
#
]] ></ac:plain-text-body></ac:structured-macro><h5>/etc/hosts.allow</h5><ac:structured-macro ac:macro-id="f3ec6a0a-d9f7-42b1-8a84-378d364ce844" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[portmap: 134.250.7.110, 134.250.7.111
lockd: 134.250.7.110, 134.250.7.111
rquotad: 134.250.7.110, 134.250.7.111
mountd: 134.250.7.110, 134.250.7.111
statd: 134.250.7.110, 134.250.7.111
]] ></ac:plain-text-body></ac:structured-macro><h5>/etc/hosts.deny</h5><ac:structured-macro ac:macro-id="3a69eed4-bf24-4df4-9577-d3c70cf459c3" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL
]] ></ac:plain-text-body></ac:structured-macro><h3>Troubleshooting</h3><p>If things aren't starting up as expected, try the following:</p><ol><li>&nbsp;Stop all services on the server:<ol><li>service nfs stop</li><li>service nfslock stop</li><li>service portmap stop</li><li>service rpcsvcgssd stop</li><li>service rpcgssd stop</li><li>service rpcidmapd stop</li></ol></li><li>Start all services in the following order:<ol><li>service portmap start</li><li>service nfslock start</li><li>service rpcsvcgssd start</li><li>service nfs restart</li></ol></li></ol></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2012-06-05 09:35:25.941
originalVersion: 22151231
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388502</id>
<property name="hibernateVersion">1</property>
<property name="title">NFS Configuration</property>
<property name="lowerTitle">nfs configuration</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421270</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454089</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454090</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2011-01-31 09:34:59.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2012-06-05 09:35:25.941</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">22151231</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388503
Fecha creación: 2008-12-02 09:24:48.000
<property name="body"><h3>Create a file called suu_startup in the /etc/init.d directory. Be sure to replace &lt;server&gt; with your server's name, i.e. oak, aspen, etc. Save file and proceed to next steps.</h3>
<ac:structured-macro ac:macro-id="1ec53806-71ac-45f7-8f38-e797e706898c" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#!/bin/bash
#
# chkconfig: 35 98 01
# description: Starts Oracle Application Server software
#
export SOURCE=/u01/app/oracle/scripts
export USER=root
touch /var/lock/subsys/suu_startup
case "$1" in
start)
echo -n "Starting suu_startup"
if [ -f "$SOURCE/start<server>.ksh" ]; then
$SOURCE/start<server>.ksh #> /tmp/start<server>.log 2>&1
fi
;;
stop)
echo -n "Stopping suu_startup"
if [ -f "$SOURCE/stop<server>.ksh" ]; then
$SOURCE/stop<server>.ksh #> /tmp/stop<server>.log 2>&1
fi
;;
*)
printf "Usage: `basename $0` {start | stop}\n"
exit 1
;;
esac
exit 0
]] ></ac:plain-text-body></ac:structured-macro>
<h4>Step 2 - chmod 755 suu_startup</h4>
<h4>Step 3 - chkconfig --add suu_startup</h4>
<h4>Step 4 - chkconfig --level 345 suu_startup on</h4></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-12-02 09:43:28.000
originalVersion: 8749480
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388503</id>
<property name="hibernateVersion">1</property>
<property name="title">Oracle Database Startup and Shutdown Script (Template)</property>
<property name="lowerTitle">oracle database startup and shutdown script (template)</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421271</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454092</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454093</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-12-02 09:24:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-12-02 09:43:28.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749480</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388504
Fecha creación: 2008-06-24 12:31:17.000
<property name="body"><ac:structured-macro ac:macro-id="0f555421-bf63-406c-ad16-24ae885b4d25" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>Say you have a file with email addresses in it along with other junk and you just want to pull out the email addresses into a file with one email address per line... well this is how you do it.</p></ac:rich-text-body></ac:structured-macro>
<ac:structured-macro ac:macro-id="dd1ce808-c39e-454e-b284-1fc02d30105f" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
cat list.txt | grep -o "[[:alnum:][:graph:]] *@[[:alnum:][:graph:]] *" > newfile.txt
]] ></ac:plain-text-body></ac:structured-macro>
<p>Where list.txt contains the emails along with other stuff and newfile.txt is the file with one email address per line.</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-06-24 12:31:19.000
originalVersion: 5799968
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388504</id>
<property name="hibernateVersion">1</property>
<property name="title">Pulling Email Addresses From a File</property>
<property name="lowerTitle">pulling email addresses from a file</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421272</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454095</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454096</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-06-24 12:31:17.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-06-24 12:31:19.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">5799968</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388505
Fecha creación: 2008-03-07 16:31:29.000
<property name="body"><h3>Ubuntu</h3>
<p>Sometimes when modifying the xorg.conf file, you'll mess it up and not have a backup. Here's a command to restore the original as it was at install.</p>
<p>dpkg-reconfigure -phigh xserver-xorg</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2008-03-07 16:31:30.000
originalVersion: 2883674
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388505</id>
<property name="hibernateVersion">1</property>
<property name="title">Reconfigure X</property>
<property name="lowerTitle">reconfigure x</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421273</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454098</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454099</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-03-07 16:31:29.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2008-03-07 16:31:30.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">2883674</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388506
Fecha creación: 2008-04-27 18:40:03.000
<property name="body"><ac:structured-macro ac:macro-id="2f4b7cb2-4371-4c10-b189-20a22abd65c7" ac:name="info" ac:schema-version="1"><ac:parameter ac:name="title">Description</ac:parameter><ac:rich-text-body>
<p>These instructions explain how to access our VPN using Linux without the Cisco vpn client.</p></ac:rich-text-body></ac:structured-macro>
<h2>Setup</h2>
<ol>
<li>Install vpnc
<ac:structured-macro ac:macro-id="1dbc5e27-da88-46d9-b576-7bcee0049067" ac:name="code" ac:schema-version="1"><ac:parameter ac:name="title">Ubuntu</ac:parameter><ac:plain-text-body><![CDATA[sudo apt-get install vpnc]] ></ac:plain-text-body></ac:structured-macro></li>
<li>Place this file in /etc/vpnc/ <ac:link><ri:attachment ri:filename="suu.conf" /></ac:link></li>
</ol>
<h2>Running</h2>
<ol>
<li><ac:structured-macro ac:macro-id="471b1473-f3f1-4e49-b993-9731f884d76a" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo vpnc suu]] ></ac:plain-text-body></ac:structured-macro>
or
<ac:structured-macro ac:macro-id="afbe8a8e-91c6-4576-9678-02361a15dadb" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[sudo vpnc suu --no-detach]] ></ac:plain-text-body></ac:structured-macro></li>
</ol>
</property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d3c0031
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-05-23 22:23:01.000
originalVersion: 4161629
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388506</id>
<property name="hibernateVersion">1</property>
<property name="title">Setting up VPN access on Linux</property>
<property name="lowerTitle">setting up vpn access on linux</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421274</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486794</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454101</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454102</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="creationDate">2008-04-27 18:40:03.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-05-23 22:23:01.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">4161629</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388507
Fecha creación: 2013-04-04 12:43:10.648
<property name="body"><p>Recently, we had a SLES10 server (AUTH1) that would not boot properly. &nbsp;It would try, and then get to a point where it said it was looking for the root device (/dev/sda2), and would eventually fail with an error similar to &quot;Waiting for device /dev/sda2 to appear&quot;. &nbsp;We ran the rescue procedure off the original boot media, to no avail. &nbsp;We reinstalled the boot record to the MBR, still nothing. &nbsp;Finally, I found a document on the web that explained what happened (missing driver in /etc/sysconfig/kernel under the INITRD_MODULES setting)</p><h1>SLE / OES system on VMware Vsphere not able to boot: waiting for device to appear</h1><p class="first">This document&nbsp;<strong>(7005233)</strong><em>&nbsp;is provided subject to the&nbsp;<a href="http://www.novell.com/support/kb/doc.php?id=7005233#disclaimer" style="text-decoration: underline;">disclaimer</a>&nbsp;at the end of this document.</em></p><h3>Environment</h3><div class="content">SUSE Linux Enterprise Server 10 Service Pack 3<br />Novell Open Enterprise Server 2 (OES 2) Linux Support Pack 2<br />VMware Vsphere version 4.0.0 build 208167<br />VMware Tools 4.0.0-208167</div><h3>Situation</h3><div class="content">After a reboot of a kernel update, the boot process shows<br /><br /><div><span>&nbsp;/dev/sda1 not found: ignoring</span><br /><span>waiting for sda2....... not responding</span></div><br />and does not continue.</div><h3>Resolution</h3><div class="content">Usually this error message indicates the driver for the block device providing the root device is missing which is also true in this situation. To solve this issue please proceed as follows:<br /><br /><ol><li>Attach any ISO of SLES10 to the virtual system and boot from it<br /><br /></li><li>Select rescue system from the installation menu and boot it<br /><br /></li><li>Log in as root<br /><br /></li><li>Run&nbsp;<br /><br /><span>fdisk -l&nbsp;</span><br /><br />to check whether the partitions are recognized properly<br /><br /></li><li>Execute:<br /><br /><span>mount /dev/sdXY /mnt</span><br /><br />to mount the root device. X is the letter of the device and Y the number of the partition.<br /><br /></li><li>Check if&nbsp;<span>/etc/sysconfig/kernel</span>&nbsp;has all required modules in the variable&nbsp;<span>INITRD_MODULES</span>. The entries should be similar to those:<br /><br /><span>INITRD_MODULES=&quot;piix mptspi processor thermal fan reiserfs dm_mod edd&quot;</span><br /><br />Note: As the root device was mounted inside the rescue system, the new path is<br /><br /><span>/mnt/etc/sysconfig/kernel</span><br /><br />To read the file, use the command<br /><br /><span>less /mnt/etc/sysconfig/kernel</span><br /><br />The INITRD_MODULES entry is usually found at the very top of this file. However, on VMware Vsphere it was observed that the entry at the top was removed completely and exchanged by a line at the very bottom of the file which looked like:<br /><br /><span># Beginning of the block added by the VMware software</span><br /><span>INITRD_MODULES=&quot;vmxnet &quot;</span><br /><span># End of the block added by the VMware software</span><br /><br />Thus all necessary modules to access the block device were removed, putting the system into a state not able to boot.<br /><br /></li><li>Adjust the line according to<br /><br /><span>INITRD_MODULES=&quot;piix mptspi processor thermal fan reiserfs dm_mod edd&quot;</span><br /><br />Add further modules if necessary.<br /><br /></li><li>The initrd needs to be recreated with the necessary modules. To do so, please execute:<br /><br /><span>mount -o bind /proc /mnt/proc</span><br /><span>mount -o bind /dev /mnt/dev</span><br /><span>mount -o bind /sys /mnt/sys</span><br /><span>chroot /mnt</span><br /><span>mkinitrd</span><br /><br /></li><li>The output of&nbsp;<span>mkinitrd</span>&nbsp;should be similar to this:<br /><br /><span># mkinitrd</span><br /><span>Root device:&nbsp;&nbsp;&nbsp; /dev/evms/lvm2/system/root (mounted on / as reiserfs)</span><br /><span>Module list:&nbsp;&nbsp;&nbsp;&nbsp; piix mptspi processor thermal fan reiserfs dm_mod edd dm_snapshot (xennet xenblk)</span><br /><br /><span>Kernel image:&nbsp;&nbsp; /boot/vmlinuz-2.6.16.60-0.54.5-smp</span><br /><span>Initrd image:&nbsp;&nbsp; /boot/initrd-2.6.16.60-0.54.5-smp</span><br /><span>Shared libs:&nbsp;&nbsp;&nbsp; lib/ld-2.4.so lib/libacl.so.1.1.0 lib/libattr.so.1.1.0 lib/libc-2.4.so lib/libdevmapper.so.1.02 lib/libdl-2.4.so lib/libevms-2.5.so.0.5 lib/libhistory.so.5.1 lib/libncurses.so.5.5 lib/libpthread-2.4.so lib/libreadline.so.5.1 lib/librt-2.4.so lib/libuuid.so.1.2 lib/libnss_files-2.4.so lib/libnss_files.so.2 lib/libgcc_s.so.1</span><br /><br /><span>Driver modules: ide-core ide-disk scsi_mod sd_mod piix scsi_transport_spi mptbase mptscsih mptspi processor thermal fan dm-mod edd dm-snapshot dm-mirror libata ahci ata_piix</span><br /><span>Filesystem modules:&nbsp;&nbsp;&nbsp;&nbsp; reiserfs</span><br /><span>Including:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; initramfs dm/evms2 evms2/disk fsck.reiserfs</span><br /><span>Bootsplash:&nbsp;&nbsp;&nbsp;&nbsp; SuSE-SLES (1152x864)</span><br /><span>19170 blocks</span><br /><br />Make sure the module list contains&nbsp;<span>mptspi</span>&nbsp;as this is the module for the virtual SCSI controller.&nbsp;<br /><br /></li><li>Once verified, exit the chroot environment, umount all mounted file systems and reboot:<br /><br />exit<br />umount /mnt/* # this is to umount proc, sys and dev in one go<br />umount /mnt&nbsp;&nbsp; # umount the root file system<br />reboot</li></ol></div></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-04-04 12:43:10.648
originalVersion: 30048258
contentStatus: draft
space: 3014657
Colección: outgoingLinks
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388507</id>
<property name="hibernateVersion">1</property>
<property name="title">SLES on VMware waiting for device to appear fix</property>
<property name="lowerTitle">sles on vmware waiting for device to appear fix</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421275</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection">
<element class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">122486795</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454105</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454106</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2013-04-04 12:43:10.648</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-04-04 12:43:10.648</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">30048258</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388508
Fecha creación: 2009-07-01 15:18:23.000
<property name="body"><p>From Dave Iler:</p>
<p>This document tells how to switch from sendmail to postfix under Redhat AS 4.<br />
The info was found with google &amp; applied to ginkgo.&nbsp; It worked.<br />
1)&nbsp; service sendmail stop<br />
2)&nbsp;&nbsp;&nbsp; chkconfig sendmail off<br />
3)&nbsp;&nbsp;&nbsp; alternatives --display mta<br />
4)&nbsp;&nbsp;&nbsp; alternatives --config mta<br />
At this point the alteratives program will offer you a menu of choices for<br />
the mta.&nbsp; The default will have a <ac:emoticon ac:name="plus" /> plus sign by it.&nbsp; Often, sendmail is<br />
the first choice and has a <ac:emoticon ac:name="plus" /> by it; and postfix is listed second.<br />
Press the number that refers to postfix &amp; hit the &lt;enter&gt; key.<br />
5)&nbsp;&nbsp;&nbsp; chkconfig postfix on<br />
6)&nbsp;&nbsp;&nbsp; service postfix start<br />
At this point you should be able to enter the next command and see something<br />
like this:<br />
[root@ginkgo ~]# alternatives --display mta<br />
mta - status is manual.<br />
&nbsp;link currently points to /usr/sbin/sendmail.postfix<br />
/usr/sbin/sendmail.sendmail - priority 90<br />
&nbsp;slave mta-pam: /etc/pam.d/smtp.sendmail<br />
&nbsp;slave mta-mailq: /usr/bin/mailq.sendmail<br />
&nbsp;slave mta-newaliases: /usr/bin/newaliases.sendmail<br />
&nbsp;slave mta-rmail: /usr/bin/rmail.sendmail<br />
&nbsp;slave mta-sendmail: /usr/lib/sendmail.sendmail<br />
&nbsp;slave mta-mailqman: /usr/share/man/man1/mailq.sendmail.1.gz<br />
&nbsp;slave mta-newaliasesman: /usr/share/man/man1/newaliases.sendmail.1.gz<br />
&nbsp;slave mta-aliasesman: /usr/share/man/man5/aliases.sendmail.5.gz<br />
&nbsp;slave mta-sendmailman: /usr/share/man/man8/sendmail.sendmail.8.gz<br />
/usr/sbin/sendmail.postfix - priority 30<br />
&nbsp;slave mta-pam: /etc/pam.d/smtp.postfix<br />
&nbsp;slave mta-mailq: /usr/bin/mailq.postfix<br />
&nbsp;slave mta-newaliases: /usr/bin/newaliases.postfix<br />
&nbsp;slave mta-rmail: /usr/bin/rmail.postfix<br />
&nbsp;slave mta-sendmail: /usr/lib/sendmail.postfix<br />
&nbsp;slave mta-mailqman: /usr/share/man/man1/mailq.postfix.1.gz<br />
&nbsp;slave mta-newaliasesman: /usr/share/man/man1/newaliases.postfix.1.gz<br />
&nbsp;slave mta-aliasesman: /usr/share/man/man5/aliases.postfix.5.gz<br />
&nbsp;slave mta-sendmailman: /usr/share/man/man1/sendmail.postfix.1.gz<br />
Current `best' version is /usr/sbin/sendmail.sendmail.<br />
Sendmail can now be removed, if desired.</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-01 15:18:24.000
originalVersion: 12681525
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388508</id>
<property name="hibernateVersion">1</property>
<property name="title">Switch from Sendmail to Postfix in Red Hat 4</property>
<property name="lowerTitle">switch from sendmail to postfix in red hat 4</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421276</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454108</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454109</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-07-01 15:18:23.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-01 15:18:24.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681525</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388509
Fecha creación: 2012-02-10 10:37:11.000
<property name="body"><h3>Oracle production database servers (Red Hat or CentOS)</h3><ac:structured-macro ac:macro-id="854b9aa8-b0d6-45c1-8465-17e4fef39f7b" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename <servernamehere>
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /backup/.../*
include /u01/.../*
include /home/.../*
include /etc/.../*
include /root/.../*
exclude dsmsched.log
exclude core
exclude /.../core
exclude /.../tmp/.../*
exclude /.../tmp/*/.../*
exclude /tmp/*/.../*
exclude /.../Cache/*/.../*
exclude /var/run/*/.../*
exclude /var/tmp/*/.../*
exclude.dir /dev
exclude.dir /mnt
exclude.dir /proc
exclude.dir /*/oradata
exclude.dir /var/cache
exclude.dir /usr/src
]] ></ac:plain-text-body></ac:structured-macro><h3>Ubuntu Server</h3><ac:structured-macro ac:macro-id="872e7246-a5f7-453f-84d5-71bcc57332de" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[************************************************************************
* IBM Tivoli Storage Manager *
* *
* Sample Client System Options file for UNIX (dsm.sys.smp) *
************************************************************************
* This file contains the minimum options required to get started
* using TSM. Copy dsm.sys.smp to dsm.sys. In the dsm.sys file,
* enter the appropriate values for each option listed below and
* remove the leading asterisk (*) for each one.
* If your client node communicates with multiple TSM servers, be
* sure to add a stanza, beginning with the SERVERNAME option, for
* each additional server.
************************************************************************
SErvername tivoli
COMMMethod TCPip
TCPPort 1500
TCPServeraddress tivoli.suu.edu
nodename WIKI
passwordaccess generate
MANAGEDSERVICES schedule webclient
include /home/.../*
include /etc/.../*
exclude.dir /bin
exclude.dir /boot
exclude.dir /dev
exclude.dir /initrd
exclude.dir /lib
exclude.dir /lost*
exclude.dir /media
exclude.dir /mnt
exclude.dir /opt
exclude.dir /proc
exclude.dir /root
exclude.dir /sbin
exclude.dir /srv
exclude.dir /tmp
exclude.dir /usr/bin
exclude.dir /usr/games
exclude.dir /usr/include
exclude.dir /usr/lib
exclude.dir /usr/sbin
exclude.dir /usr/share
exclude.dir /usr/src
exclude.dir /usr/X11R6
exclude.dir /usr/local/bin
exclude.dir /usr/local/games
exclude.dir /usr/local/include
exclude.dir /usr/local/lib
exclude.dir /usr/local/sbin
exclude.dir /usr/local/share
exclude.dir /usr/local/src
exclude.dir /var/lib]] ></ac:plain-text-body></ac:structured-macro><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2013-06-04 13:23:03.527
originalVersion: 24805572
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388509</id>
<property name="hibernateVersion">1</property>
<property name="title">Tivoli dsm.sys example configs - Admin IT standards</property>
<property name="lowerTitle">tivoli dsm.sys example configs - admin it standards</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421277</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454111</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454112</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2012-02-10 10:37:11.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2013-06-04 13:23:03.527</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">24805572</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388510
Fecha creación: 2009-08-17 12:59:27.000
<property name="body"><p>Since the Ecommerce subnet is very locked down, we have to take a couple of extra steps to enable hosts to talk to each other even though they are in the same subnet.</p>
<p>For Ubuntu Server:</p>
<p>edit the /etc/rc.local file, and put the following lines just before the last line:</p>
<p>For the host you want to connect TO:</p>
<p>exec arp -s &lt;ipaddress&gt;&lt;space&gt;&lt;macaddress&gt;</p>
<p>For the host you are ON: (optional; I like this for documentation purposes)</p>
<p>exec arp -s &lt;ipaddress&lt;space&gt;&lt;macaddress&gt;</p>
<p>Save the file, and then make sure it is flagged executable.</p>
<p>That's it - on next reboot, you should be able to communicate with the remote box.</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-08-19 11:45:24.000
originalVersion: 14024730
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388510</id>
<property name="hibernateVersion">1</property>
<property name="title">Using the ARP command to permit inter-host communication in the Ecommerce Subnet</property>
<property name="lowerTitle">using the arp command to permit inter-host communication in the ecommerce subnet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421278</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454114</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454115</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-08-17 12:59:27.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-08-19 11:45:24.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">14024730</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388511
Fecha creación: 2008-11-11 08:11:18.000
<property name="body"><ac:structured-macro ac:macro-id="0b8aa59c-099c-41a4-a993-af61a5605219" ac:name="attachments" ac:schema-version="1"><ac:parameter ac:name="old">true</ac:parameter></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2008-11-12 08:10:59.000
originalVersion: 8749165
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388511</id>
<property name="hibernateVersion">1</property>
<property name="title">vi Cheat Sheet</property>
<property name="lowerTitle">vi cheat sheet</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421279</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454117</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454118</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2008-11-11 08:11:18.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2008-11-12 08:10:59.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">8749165</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388516
Fecha creación: 2010-04-19 10:21:41.000
<property name="body"><p>1. Download the client zip file from sherpa or the Oracle site</p>
<p>2. Install the following additional packages:</p>
<ac:structured-macro ac:macro-id="5c4bdbec-c523-46d2-a19f-04d1e8ee6bec" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#apt-get install libaio1 gawk
]] ></ac:plain-text-body></ac:structured-macro>
<p>Additionally, be sure you are running the sun java software, not the default packaged version with Ubuntu. You will also make a link for awk to gawk.</p>
<ac:structured-macro ac:macro-id="4a447483-e9c7-4e23-bb14-ae694a8e6dd5" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#apt-get install sun-java6-bin sun-java6-jre sun-java6-plugin sun-java6-jdk
#cd /etc/alternatives
#ln -s /usr/lib/jvm/java-6-sun/jre/bin/java java
#cd /usr/bin
#ln -s /usr/bin/gawk awk
]] ></ac:plain-text-body></ac:structured-macro>
<p>3. Next, we will initiate the installer to see where it fails and what settings we need to add to our /etc/sysctl.conf file. Initiate the installer as follows, and then CANCEL as soon as you have the values you need:</p>
<ac:structured-macro ac:macro-id="c57db474-245b-4c1c-a785-42caeb2e62bb" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
./runinstaller -ignoreSysPrereqs
]] ></ac:plain-text-body></ac:structured-macro>
<p>You will reach a point where it checks for needed settings, and gives you a list of everything that does not meet requirements. The settings you are interested in are listed in the next step. Make a note of the values the installer recommends.</p>
<p>4. Add the following entries to your /etc/sysctl.conf file: (change values to match what is recommended for your machine - some will be the same, some won't)</p>
<ac:structured-macro ac:macro-id="52d5844b-5c6b-48df-b687-fe32e6851f92" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# Oracle client stuff
kernel.shmmax = 536870912
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
]] ></ac:plain-text-body></ac:structured-macro>
<p>Next, run the following to make the settings active:</p>
<ac:structured-macro ac:macro-id="e72e1f50-6e0a-4d2b-bf33-e23d15d22238" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#sysctl -p
]] ></ac:plain-text-body></ac:structured-macro>
<p>5. Now you can run the installer and ignore the warnings completely (there is a checkbox to do this)</p>
<ac:structured-macro ac:macro-id="21b82212-8dbd-4647-9e31-205bf8c43252" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
./runinstaller -ignoreSysPrereqs
]] ></ac:plain-text-body></ac:structured-macro>
<p>6. Once it is finished, make a note of where you installed it to, and make the following entries in your .bashrc file:</p>
<ac:structured-macro ac:macro-id="4431977c-410d-4fae-ab66-eaa892747fdb" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#Oracle stuff
export ORACLE_HOME=/<path_to_where_you_installed>/product/11.2.0/client_1
export PATH=$PATH:$ORACLE_HOME/bin
export TNS_ADMIN=$ORACLE_HOME/network/admin
]] ></ac:plain-text-body></ac:structured-macro>
<p>Next, run the following to make it active (NOT as root - run as your user):</p>
<ac:structured-macro ac:macro-id="0fe07fc2-7695-4dc3-800c-7e9d1ede51f6" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ . .bashrc
]] ></ac:plain-text-body></ac:structured-macro>
<p>If that is difficult to read, it is:</p>
<ac:structured-macro ac:macro-id="d73a3fd7-141d-4ff6-b703-04b7d445cfab" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
<dot><space><dot><bashrc>
]] ></ac:plain-text-body></ac:structured-macro>
<p>7. Lastly, copy the contents of a known good tnsnames.ora file, and paste it into the following file:</p>
<ac:structured-macro ac:macro-id="b4e82fec-06f4-4b2c-873c-ad440a9e3936" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
$ORACLE_HOME/network/admin/tnsnames.ora
]] ></ac:plain-text-body></ac:structured-macro>
<p>8. Run tnsping against any of the tnsnames entries, and make sure you get a response.</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2010-04-19 10:35:21.000
originalVersion: 17858594
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388516</id>
<property name="hibernateVersion">1</property>
<property name="title">Oracle full administrative client 11gR2 on Ubuntu Karmic Koala (9.10) 64-bit</property>
<property name="lowerTitle">oracle full administrative client 11gr2 on ubuntu karmic koala (9.10) 64-bit</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421284</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454142</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454143</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2010-04-19 10:21:41.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2010-04-19 10:35:21.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">17858594</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388517
Fecha creación: 2009-07-01 16:52:46.000
<property name="body"><ac:structured-macro ac:macro-id="46a525b0-4b06-47b6-8d83-7d04a3f50995" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 1.0 (buildd@palmer) Sun Feb 1 20:21:04 UTC 2009
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "ServerFlags"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "DELL 2407WFP"
HorizSync 30.0 - 83.0
VertRefresh 56.0 - 60.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 9800 GT"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "1"
Option "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-1: 1920x1200_60 +1920+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
]] ></ac:plain-text-body></ac:structured-macro></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d2c0005
lastModificationDate: 2009-07-02 13:46:31.000
originalVersion: 12681527
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388517</id>
<property name="hibernateVersion">1</property>
<property name="title">Xorg configuration file for nVidia 9800GT Ubuntu 9.04 Jaunty</property>
<property name="lowerTitle">xorg configuration file for nvidia 9800gt ubuntu 9.04 jaunty</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421285</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454145</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454146</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-07-01 16:52:46.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="lastModificationDate">2009-07-02 13:46:31.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">12681527</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>
ID: 122388520
Fecha creación: 2009-01-14 11:29:48.000
<property name="body"><p>First off, do not use Tomcat from the Ubuntu repository - download it yourself, and extract it in the home directory of the user it will run as. The example given here is from our xmlbill server.</p>
<h2>Tomcat Startup Script</h2>
<h5>Step 1: To make Tomcat start automatically, you must create a file in /etc/init.d called tomcat. Populate the file with the following:</h5>
<ac:structured-macro ac:macro-id="a71495cc-57b2-4302-89a4-28673aa44970" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#!/bin/bash
#
# Startup script for Tomcat server
#
# chkconfig: - 83 53
# description: Starts and stops the Tomcat daemon.
# processname: tomcat
# pidfile: /var/run/tomcat.pid
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export TOMCAT_HOME=/home/billservice/apps/apache-tomcat-6.0.18
export TOMCAT_USER=billservice
# See how we were called.
case $1 in
start)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
stop)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
;;
restart)
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/shutdown.sh"
su - $TOMCAT_USER -c "sh $TOMCAT_HOME/bin/startup.sh"
;;
*)
echo "Usage: /etc/init.d/tomcat start|stop|restart"
;;
esac
exit 0
]] ></ac:plain-text-body></ac:structured-macro>
<p>A couple of things to note here; we 'su' to the user we want the process to run as. This is important because we do NOT want processes running as root. Additionally, we are explicitly setting the JAVA_HOME environment variable here, but you may wish to set it in /etc/profile (system-wide) or ~.bashrc (user-specific).</p>
<h5>Set to start automatically</h5>
<p>Run the following commands as root:</p>
<ac:structured-macro ac:macro-id="91ad35ee-de98-44cf-a181-b761c4ad57f1" ac:name="code" ac:schema-version="1"><ac:plain-text-body><![CDATA[
#chmod 755 /etc/init.d/tomcat
#update-rc.d tomcat defaults
]] ></ac:plain-text-body></ac:structured-macro>
<p>That's it; reboot to verify that everything starts the way you expect.</p></property>
hibernateVersion: 1
version: 1
creator: 067a822a5068b347015068b38d2c0005
lastModifier: 067a822a5068b347015068b38d3c0031
lastModificationDate: 2010-07-20 07:57:05.000
originalVersion: 10223743
contentStatus: draft
space: 3014657
Colección: contentProperties
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">122388520</id>
<property name="hibernateVersion">1</property>
<property name="title">Configuring Tomcat 6.x on Ubuntu Server</property>
<property name="lowerTitle">configuring tomcat 6.x on ubuntu server</property>
<collection name="bodyContents" class="java.util.Collection">
<element class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">122421288</id>
</element>
</collection>
<collection name="contentProperties" class="java.util.Collection">
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454156</id>
</element>
<element class="ContentProperty" package="com.atlassian.confluence.content">
<id name="id">122454157</id>
</element>
</collection>
<property name="version">1</property>
<property name="creator" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d2c0005</id>
</property>
<property name="creationDate">2009-01-14 11:29:48.000</property>
<property name="lastModifier" class="ConfluenceUserImpl" package="com.atlassian.confluence.user">
<id name="key">067a822a5068b347015068b38d3c0031</id>
</property>
<property name="lastModificationDate">2010-07-20 07:57:05.000</property>
<property name="versionComment" />
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages">
<id name="id">10223743</id>
</property>
<property name="contentStatus">draft</property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces">
<id name="id">3014657</id>
</property>
<property name="position" />
</object>